スクリプトを使用して Windows 7 でデフォルトのブラウザを設定する方法は?

スクリプトを使用して Windows 7 でデフォルトのブラウザを設定する方法は?

私は、Chrome と Firefox の両方がサイレント インストールされるシステム イメージング プロセスに取り組んでいます。システムのデフォルト ユーザー (ログインするすべての新しいユーザーには FF がデフォルトとして設定されます) と現在のユーザーの両方に対して、Firefox をデフォルトのブラウザーとして設定する方法を見つけようとしています。

Firefox のドキュメントでは、これが実現できるはずだと書かれていますが、実際には機能しません。

firefox.exe -silent -setDefaultBrowser

プロセス モニターを使用すると、上記のコマンドがレジストリに対してさまざまな処理を実行していることがわかりますが、実行後、既定のブラウザーが Firefox に設定されていません。

Firefox を開いて、「ツール > オプション > 詳細設定」に移動し、「Firefox を既定のブラウザーとして設定」ボタンをクリックすると、機能します。

問題は、新しいラップトップが展開されるたびに手動で手順を実行する必要がないため、コマンド ラインから同じことを実行する方法を見つける必要があることです。

プロセス モニターを使用して、そのボタンがクリックされたときに Firefox がどのような値を設定するかを確認し、別の方法で手動で複製できるようにしようとしましたが、FF procmon で既定値の設定ボタンをクリックすると、文字通り firefox.exe による 250 を超えるレジストリ書き込みが表示され、それらをすべて追跡したくありません。

firefox.exe -silent -setDefaultBrowser が機能しない理由を解明したり、FF をシステム/ユーザーのデフォルト ブラウザーとして設定する別の方法を提案したりできる人はいませんか?

答え1

登録はhelper.exe

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

完全性のために、現在のユーザーのみのデフォルトのブラウザを変更したい場合は

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

答え2

私自身は試していませんが、HKEY_CLASSES_ROOT\http\shell\open\commandこれを実現するために設定できる可能性があります。

関連情報