透過主動啟動新增註冊表項

透過主動啟動新增註冊表項

我正在嘗試透過使用活動啟動來為電腦上的所有使用者添加金鑰。但我收到語法錯誤,因為我想新增的鍵名(FormSuggest 密碼)之間有空格,有什麼提示嗎?

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\IECachedPassword" /v "Version" /d "1" /t REG_SZ /f

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\IECachedPassword" /v "StubPath" /d "reg add HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main /v "FormSuggest Passwords" /d "no" /t REG_SZ /f" /f

如果我嘗試寫

FormSuggest_Passwords

我沒有收到任何錯誤。

如果我用引號括住子項,我會得到文法錯誤

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\IECachedPassword" /v "StubPath" /d "reg add "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main" /v "FormSuggest Passwords" /d "no" /t REG_SZ /f" /f

我正在嘗試停用 Internet Explorer 以建議儲存密碼。 Windows 7 和 IE11。有什麼幫助嗎?

答案1

Reg addtechnet.microsoft.com 上的指令參考沒有給出任何線索,但根據reg.exess64.com 上的說明:

反斜線字符

REG 指令會將 \ 解釋為緊接著的字元的轉義。若要在資料中包含引號 ("),請在其前面加上轉義字符,例如 Here is \" 是引號。

使用%_sKey1%%_sKey2%子鍵變數使程式碼片段更具可讀性(/t REG_SZ在這兩種情況下都省略了預設值):

set "_sKey1=SOFTWARE\Microsoft\Active Setup\Installed Components\IECachedPassword"
set "_sKey2=Software\Microsoft\Internet Explorer\Main"

reg add "HKLM\%_sKey1%" /v "StubPath" /d "reg add \"HKCU\%_sKey2%\" /v \"FormSuggest Passwords\" /d \"no\" /f" /f

讓我們再次回溯最後一個長命令以獲得更好的可讀性,分成多行:

reg add "HKLM\%_sKey1%" /v "StubPath" ^
/d "reg add \"HKCU\%_sKey2%\" /v \"FormSuggest Passwords\" /d \"no\" /f" /f

答案2

這行對我來說毫無意義:

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\IECachedPassword" /v "StubPath" /d "reg add HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main /v "FormSuggest Passwords" /d "no" /t REG_SZ /f" /f

看起來它應該是兩個單獨的命令,但您以某種方式將一個命令嵌入到另一個命令中(或截斷一個命令,然後將另一個直接附加到它上面?),導致引用使用不當(您不能在double 中嵌入雙引號) -引用除非你逃離他們-- 將它們加倍"":)。

對我來說,這看起來就像是一個糟糕的複製貼上工作。

相關內容