2011-07-12 58 views
0

我正在寫一個vbscript,我需要修改幾個註冊表項。問題在於,Chrome或Firefox從我們的某臺計算機上移除後,您無法再在網絡瀏覽器之外打開鏈接。這是因爲計算機仍將默認瀏覽器視爲已刪除的瀏覽器。我有一個正在工作的其他幾個註冊表修改,但是當我運行該腳本,它不會更改以下注冊表項:VBS不會修改註冊表

'does not work 
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\" 
    wShell.RegWrite strRoot,"" & Chr(34) & "%1" & Chr(34) & ",,-1,0,,,," 
    'does not work 
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\NoActivateHandler" 
    wShell.RegWrite strRoot,"" 
    'does not work 
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\Application\" 
    wShell.RegWrite strRoot,"IExplore" 
    'does not work 
    strRoot = "HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\Topic\" 
    wShell.RegWrite strRoot,"WWW_OpenURL" 

這也需要在相同的路徑將被應用到「HTTP」鍵,同樣,「ddeexec」文件夾中的任何內容都不能更改。我不相信這是一個權限問題,但是因爲我可以進入註冊並手動更改它沒有問題

回答

1

嘗試

HKEY_CLASSES_ROOT\https\Shell\open\ddeexec\ 

,而不是

HKEY_CLASSES_ROOT\https\Shell\open\command\ddeexec\ 
+0

這工作,我是一個白癡......哈哈謝謝你的幫助 – DarkShadow

+0

沒問題,錯別字總是讓我也:) – Dave

0

您是否在本地或遠程運行此腳本?機器是否有任何殺毒軟件正在運行?您使用的是哪個版本的Windows?

腳本訪問的註冊表權限可能與本地用戶帳戶的不同。也就是說,這意味着使用註冊表編輯器成功更改註冊表項並不一定意味着您可以通過腳本來完成註冊表項。

另外,打開此係統上剩餘的瀏覽器應提示用戶將其設爲默認瀏覽器。如果他們選擇允許,它會爲您重置所有這些設置。

+0

腳本被設計爲系統帳戶下運行遠程然而結果是,即使我只是用我自己的憑據運行相同的我自己的機器。 這將用於所有Windows XP SP3 32位的機器。他們都安裝了Symantec Endpoint Protection。由於組策略限制,打開IE不會提示默認設置。我認爲無論誰對這些圖像進行成像都認爲限制IE中的設置會阻止其他瀏覽器成爲默認設置,但它不會。 – DarkShadow