windows reg

如何製作 reg 檔 註冊檔 
使用 Regedit 來編輯 registry 是很方便的一件事, 我們常常看到 .reg 的檔案可以匯入新的機碼或值, 或是編輯已存在的值或是設成空白, 但似乎對移除該值或是該機碼則無法使用 .reg 的檔案來進行, 本篇文章旨在利用 .reg 檔即可做到 新增 / 移除 / 編輯 某值或機碼. 
.reg 檔內容撰寫要點: 

1. 第一行必須為 REGEDIT4 (必須大寫, 而且必須在第一行, 4 是 Windows 95/98/ME/NT, 5 是 Windows2000/XP), 看你使用的環境來選擇 REGEDIT4 或 Windows Registry Editor Version 5.00 

2. 第二行必須為空行(其實這行即使不空下來也沒有影響, 弟試過應該是沒有問題) 

3. 接下來的內容就是有關要加入或編輯的機碼及值 
3-1 機碼的寫法 [HKEY_LOCAL_MACHINE\SOFTWARE\TEST] 
3-2 值的寫法 “my name”=”test” 其中字串(REG_SZ)不需要加上前綴字, 若是非字串則請參考: 
REG_BINARY-> hex 
REG_DWORD-> dword 
REG_EXPAND_SZ-> hex(2) 
REG_MULTI_SZ-> hex(7) 
如: “my binary”=hex:cc,1b,00,00,00,40,3d,68 
3-3 該機碼或值不存在, 則會新增, 存在的話, 則會覆蓋 
3-4 預設值的設法 @=”default value”, 使用 @ 符號 
3-5 特號注意, 若要用 \ 符號時, 請用 \\ 代替, 如 “my path”=”C:\\” 

以上為一般的操作方法, 接下來要說明的是移除的作法, 

4. 移除機碼或值, 其實很簡單, 只要在該機碼前加上 – (減號) 或是值設為 – (減號) 即可如, 
移除機碼: 
[-HKEY_LOCAL_MACHINE\SOFTWARE\TEST] 
移除值: 
“my name”=- 

5. 可以雙擊該 .reg 檔即可順利匯入內容, 或是使用 regedit xxx.reg 的方式亦可, 加上 /s 的方式就以 slient mode 安裝入 registry 

範例檔:test.reg

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\Dos_View]
@="Open Command Prompt 視窗"

[HKEY_CLASSES_ROOT\Directory\shell\Dos_View\command]
@="cmd.exe /k "cd %L""


範例檔:調整輸入法IME (注音優先).reg

Windows Registry Editor Version 5.00 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Keyboard Layout\PreLoad] ‘1’=”00000409″ ;/* 00000409 英文 (美國) – 英文鍵盤 */ ‘2’=”e0010404″ ;/* E0010404 中文 (繁體) – 注音 */ ‘3’=”e0080404″ ;/* E0080404 中文 (繁體) – 新注音 */ ‘4’=”00000404″ ;/* 00000404 中文 (繁體) – 美式鍵盤 */ ‘5’=”e0020404″ ;/* E0020404 中文 (繁體) – 倉頡 */ ‘6’=”e0030404″ ;/* E0030404 中文 (繁體) – 速成 */ ‘7’=”e0090404″ ;/* E0090404 中文 (繁體) – 新倉頡 */ ‘8’=”e0040404″ ;/* E0040404 中文 (繁體) – Big5 碼 */ ;輸入法無法用CTRL + SHIFT 切換,方法:直接修改登錄檔
;HKEY_CURRENT_USER\Keyboard Layout\Toggle, Language Hotkey ,將數值 REG_SZ 由 2 改成 1 就可以了。

;HKCU,Keyboard Layout\Toggle,Language Hotkey,0,1

[HKEY_CURRENT_USER\Keyboard Layout\Toggle]
“Language Hotkey”=”1”

;————————————————————
;HKCU,Keyboard Layout\Toggle,Language Hotkey,0,1

[HKEY_CURRENT_USER\Keyboard Layout\Toggle]
“Language Hotkey”=”1”

;————————————————————
;HKCU,Keyboard Layout\Toggle,Layout Hotkey,0,2

[HKEY_CURRENT_USER\Keyboard Layout\Toggle]
“Layout Hotkey”=”2”


範例檔:調整修改「Bin file」關聯到 UltraEdit.reg

Windows Registry Editor Version 5.00
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.Bin]
@="Bin file"

[HKEY_CLASSES_ROOT\Bin file\DefaultIcon]
@="D:\\Bitmap~~~\\Icon\\Binfile.ico"

"Writer"="uterng"


範例檔:清空「開始、執行」的歷史紀錄.reg

Windows Registry Editor Version 5.00
Windows Registry Editor Version 5.00

;移除機碼或值, 其實很簡單, 在該機碼前加上 - (減號) 或是值設為 - (減號) 即可

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\RunMRU]
"a"=- 
"MRUList"=-



刪除登錄機碼和登錄值 
在 .reg 檔中的 RegistryPath 之前加上運算的減符號『 – 』 
例如:[-HKEY_LOCAL_MACHINE\Software\Test] Test 整個子機碼夾刪除 

刪除下列登錄機碼中的 DataItemName 登錄值: 
例如:[-HKEY_LOCAL_MACHINE\Software\Test] 
“DataItemName”=- 登錄值刪除 



語法開頭必需注意的特定開頭,以作業系統作為區別。 

《Windows 95、98、ME、NT 4.0 》 → REGEDIT4 
《而 Windows 2000、XP、vista 》 → Windows Registry Editor Version 5.00

刪除範例:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\test123  

想刪除 test123機碼

刪除辦法:

1. 開筆記本

2. 輸入以下值  (整行複製亦可)

Windows Registry Editor Version 5.00

[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\test123]

3. 另存新檔 *.reg

4. 接著執行即可

發佈留言