Ich bestimme gar nichts sondern der Anwender. Und wenn ich der Anwender bin dann registriere ich alles und fertig.
Siehe Shot..
Was nicht selektiert ist wird auch nicht registriert.. so einfach ist das.
Das mag in deinem Programm so sein, aber es gab offenbar genügend andere Programme, die einfach beim Start die hinterlegten Programme auf sich geändert haben. Und Windows kann diese beiden Sachen nicht unterscheiden.
Seit Win8 kannst du dir den Dialog also einfach sparen (yay, weniger Supportaufwand
Yay, weniger Code den du warten musst
) und dein Programm registrieren als "kann *.mp3 öffnen"
Der User bekommt dann beim nächsten mal Datei öffnen die Meldung, dass er dein Programm nutzen könnte.