我正在開發一個系統映像流程,在此過程中 Chrome 和 Firefox 都會以靜默方式安裝。我正在嘗試找到一種方法將 Firefox 設定為系統預設用戶(因此任何登入的新用戶都將 FF 設為預設)和當前用戶的預設瀏覽器。
Firefox 文件說這應該可以實現這一點,但它不起作用:
firefox.exe-silent-setDefaultBrowser
使用進程監視器,我可以看到上面的命令正在對註冊表執行一堆操作,但是在我運行它之後,我的預設瀏覽器尚未設定為 Firefox。
如果我打開 Firefox 並轉到“工具”>“選項”>“高級”,然後單擊“將 FF 設為預設瀏覽器”按鈕,這確實有效。
問題是我不想每次部署新筆記型電腦時都執行手動步驟,因此我需要找到某種方法從命令列完成相同的事情。
我嘗試使用進程監視器來查看單擊該按鈕時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
以實現此目的。