@Bernhard: Das habe ich nicht gemeint.
Eine Dateiregistrierung sollte normalerweise durch das Setup ausgeführt werden, weil ein Setup in der Regel die dazu notwendigen Rechte hat. Wer seine Programme ohne Setup verteilt, muss die Registrierung dann entweder mit einem Hilfstool oder mit dem Programm selbst durchführen.
Als Lösung bietet sich beim Erststart eine Prüfung an. Das Programm könnte im Zweifel anbieten, dass der Benutzer die Endung für sein eigenes Konto registrieren lässt (
HKCU), oder es bietet einen Neustart (ggf mit einem speziellen Parameter) mit Admin-Rechten an, damit die Registrierung für den Rechner erfolgen kann.
Davon, dass User A die Endung ".xyz" mit Programm A und User B die gleiche Endung global mit Programm B registriert, habe ich nicht gesprochen. Dass das Windows aus dem Tritt bringen kann, wundert mich allerdings auch nicht.