Wie lege ich den Standardbrowser in Windows 7 per Skript fest?

Wie lege ich den Standardbrowser in Windows 7 per Skript fest?

Ich arbeite an einem Systemabbildprozess, bei dem sowohl Chrome als auch Firefox im Hintergrund installiert werden. Ich versuche, eine Möglichkeit zu finden, Firefox sowohl für den Standardbenutzer des Systems (so dass jeder neue Benutzer, der sich anmeldet, FF als Standard festgelegt hat) als auch für den aktuellen Benutzer als Standardbrowser festzulegen.

Laut der Firefox-Dokumentation sollte das möglich sein, aber es funktioniert nicht:

firefox.exe -silent -setDefaultBrowser

Mithilfe des Prozessmonitors kann ich sehen, dass der obige Befehl eine Menge Dinge mit der Registrierung macht, aber nachdem ich ihn ausgeführt habe, ist mein Standardbrowser nicht auf Firefox eingestellt.

Wenn ich Firefox öffne und zu Extras > Optionen > Erweitert gehe und auf die Schaltfläche „FF als Standardbrowser festlegen“ klicke, funktioniert das.

Das Problem besteht darin, dass ich nicht bei jedem Einsatz eines neuen Laptops manuelle Schritte ausführen möchte. Deshalb muss ich eine Möglichkeit finden, dasselbe über die Befehlszeile zu erreichen.

Ich habe versucht, mithilfe des Prozessmonitors zu sehen, welche Werte Firefox beim Klicken auf diese Schaltfläche festlegt, damit ich sie auf andere Weise manuell duplizieren kann. Wenn ich jedoch im FF-Procmon auf die Schaltfläche „Standard festlegen“ klicke, sehe ich buchstäblich über 250 Registrierungsschreibvorgänge durch Firefox.exe und ich möchte sie nicht alle aufspüren.

Kann mir jemand dabei helfen, herauszufinden, warum firefox.exe -silent -setDefaultBrowser nicht funktioniert, oder einen anderen Weg anbieten, FF als Standardbrowser des Systems/Benutzers festzulegen?

Antwort1

Die Registrierung erfolgt durch diehelper.exe

C:\Program Files (x86)\Mozilla Firefox\uninstall\helper.exe /SetAsDefaultAppGlobal

Der Vollständigkeit halber: Wenn jemand den Standardbrowser nur für den aktuellen Benutzer ändern möchte

C:\Program Files (x86)\Mozilla Firefox\uninstall\helper.exe /SetAsDefaultAppUser

Antwort2

Ich habe das selbst nicht ausprobiert, aber Sie können HKEY_CLASSES_ROOT\http\shell\open\commanddies möglicherweise mithilfe der entsprechenden Einstellungen erreichen.

verwandte Informationen