The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何使用登錄檔(.reg)進行新增、修改或刪除登錄機碼和值

分享到噗浪!

操作登錄項目(Registry)是我經常做的事情,所以也常累積不少登錄檔(*.reg)隨時可供設定或移除,不過一般人可能比較少這樣處理,在此我就分享幾個操作登錄項目的一些小技巧。

匯出登錄機碼

無論如何,在測試修改機碼之前最好還是先備份一下,以一整個 "機碼" 為單位匯出(左側的每個資料夾都叫做機碼或稱子機碼),匯出成 *.reg 檔後,日後若改錯或出問題時,點兩下即可修復機碼。

登錄編輯程式 :: 匯出登錄項目

匯出後的格式像以下這樣,而我就是經常設定這種 *.reg 的檔案幫我更新、刪除一些系統常用機碼設定:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes]
"DefaultScope"="{05C72334-11F3-4e9f-8740-98128F52EFB9}"
"Version"=dword:00000001

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{xxxx-xxxx}]
"DisplayName"="Google"
"URL"=http://www.google.com/search?hl=zh-TW&esrch=BetaShortcuts&q={searchTerms}&lr=

新增或更新機碼值

我這陣子處理了許多開發環境的問題,其中幾天前講的 [ 安裝 Visual Studio .NET 2003 開發主機筆記 ] 就有提到如何解決 [HTTP - 401.1 未授權登入失敗] 的問題,這問題基本上只要新增一個機碼就能夠解決,而我就將這個「新增機碼」的動作儲存成 *.reg 檔,以後有其他電腦要設定環境時,直接 Double Click 就可以解決問題。

像這個問題需要在 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa 機碼中新增一筆 DisableLoopbackCheckDWORD 值,假設檔名我取成 Set-DisableLoopbackCheck.reg 內容如下:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"DisableLoopbackCheck"=dword:00000001

備註:若「機碼」本身不存在,執行 *.reg 的時候會自動建立所有不認識的機碼,無須在特別另外建立。

刪除機碼值

如上一個範例,若要將 DisableLoopbackCheckDWORD 值刪除,就可以用以下語法進行刪除:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]
"DisableLoopbackCheck"=-

這裡的重點就是設定的地方要設定成一個減號 ( - ),這就代表著「刪除」的意思。

刪除登錄機碼

跟身除機碼值不同,刪除機碼將會連同機碼機碼值、與所有子機碼都一併刪除,算是個殺傷力相當大的語法,必須小心使用。

若你想將 Visual Studio 2008 最近開啟的專案(Recent Projects)全部清空的話,可以利用以下 reg 檔直接刪除機碼並重建機碼。

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\ProjectMRUList]

[HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\9.0\ProjectMRUList]

相關連結

評論 (2) -

  • 文孝

    2009/1/24 上午 06:40:14 |

    謝謝你的教學
    我知要要如何移除指定的機碼了

blog comments powered by Disqus