只有在別無選擇的情況下,才直接編輯注冊表。注冊表編輯器會忽略標準的安全措施,從而使得這些設置會降低性能、破壞系統,甚至要求用戶重新安裝Windows。可以利用“控制面板”或“Microsoft管理控制臺(MMC)”中的程序安全更改多數注冊表設置。如果必須直接編輯注冊表,則請首先將其備份。使用Reg直接編輯本地或遠程計算機的注冊表。這些更改有可能造成計算機無法操作并需要重新安裝操作系統。所以不要直接編輯注冊表,而應盡可能利用“控制面板”或“Microsoft管理控制臺(MMC)”更改注冊表。有些操作可以查看或配置本地或遠程計算機的注冊表項,而另外一些則只允許配置本地計算機的注冊表設置。同時,遠程訪問注冊表也可能會限制用于某操作的參數。請檢查每個操作的語法以便驗證該操作可以用于遠程計算機,以及驗證可用于那種情況下的參數。
reg命令是WindowsXP提供的,它可以添加、更改和顯示注冊表項中的注冊表子項信息和值。
1,reg add 將新的子項或項添加到注冊表中
語法:reg add KeyName [/v EntryName|/ve] [/t DataType] [/s separator] [/d value] [/f]
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在//ComputerName/PathToSubkey中的子項路徑前包含計算機名稱。忽略ComputerName會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM、HKCU、HKCR、HKU以及HKCC。遠程機器上只有 HKLM 和 HKU。
值 說明
HKCR: HKEY_CLASSES_ROOT
HKCU: HKEY_CURRENT_USER
HKLM: HKEY_LOCAL_MACHINE
HKU: HKEY_USERS
HKCC: HKEY_CURRENT_CONFIG
/v EntryName
指定要添加到指定子項下的項名稱。
/ve
指定添加到注冊表中的項為空值。
/t DataType
指定項值的數據類型。DataType可以是以下幾種類型:
REG_SZ
REG_MULTI_SZ
REG_DWORD_BIG_ENDIAN
REG_DWORD
REG_BINARY
REG_DWORD_LITTLE_ENDIAN
REG_LINK
REG_FULL_RESOURCE_DESCRIPTOR
REG_EXPAND_SZ
/s separator
指定用于分隔多個數據實例的字符。當REG_MULTI_SZ指定為數據類型且需要列出多個項時,請使用該參數。如果沒有指定,將使用默認分隔符為"/0"。
/d value
指定新注冊表項的值。
/f
不用詢問信息而直接添加子項或項。
/?
在命令提示符顯示幫助。
注釋
該操作不能添加子樹。該版本的Reg在添加子項時無需請求確認。
下表列出了reg add操作的返回值。值說明
0成功
1失敗
/v 所選項之下要添加的值名。
/ve 為注冊表項添加空白值名(默認)。
/t RegKey 數據類型
[ REG_SZ | REG_MULTI_SZ | REG_EXPAND_SZ |
REG_DWORD | REG_QWORD | REG_BINARY | REG_NONE ]
如果忽略,則采用 REG_SZ。
/s 指定一個在 REG_MULTI_SZ 數據字符串中用作分隔符的字符
如果忽略,則將 "/0" 用作分隔符。
/d 要分配給添加的注冊表 ValueName 的數據。
/f 不用提示就強行覆蓋現有注冊表項。
范例
(補充,cmd /k 為在運行中使用reg命令)
下列范例說明了如何使用reg add命令:
cmd /k reg add "HKLM/Software/Microsoft/Windows/CurrentVersion/explorer/Advanced/Folder/Hidden/SHOWALL" /v Checkedvalue /t reg_dword /d 1 /f(顯示隱藏的文件和文件夾)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Run" /v systray /t REG_SZ /d "%SystemRoot%/system32/systray.exe" /f(開機啟動音量控制)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon" /v Shell /t REG_SZ /d "%SystemRoot%/explorer.exe" /f(開機啟動explorer外殼程序)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Run" /v SoundMan /t REG_SZ /d "%SystemRoot%/SOUNDMAN.exe" /f(開機啟動AC97音效管理員程序)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/App Paths/IEXPLORE.EXE" /ve /d "%ProgramFiles%/Internet Explorer/IEXPLORE.EXE" /t REG_SZ /f
(UC房間打不開廣播)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/App Paths/MSCONFIG.EXE" /ve /d "%SystemRoot%/PCHealth/HelpCtr/Binaries/MSConfig.exe" /t REG_SZ /f
(運行MSConfig提示找不到文件)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/App Paths/wmplayer.exe" /ve /d "%ProgramFiles%/Windows Media Player/wmplayer.exe" /t REG_SZ /f
(不能正常調用WMP播放器的修復)
cmd /k reg add "HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/App Paths/WORDPAD.EXE" /ve /d "%ProgramFiles%/Windows NT/Accessories/WORDPAD.EXE" /t REG_SZ /f
(不能正常調用寫字板的修復)
cmd /k reg add "HKCU/Software/Microsoft/Windows/CurrentVersion/Run" /v ctfmon.exe /t REG_SZ /d "%SystemRoot%/system32/ctfmon.exe" /f(開機啟動輸入法程序CTFMON)
cmd /k reg add "HKCU/ControlPanel/Desktop" /v WaitToKIllAppTimeOut /t REG_SZ /d 10000 /f(加速關閉應用程序)
例如:
REG ADD //ABC/HKLM/Software/MyCo
添加遠程機器 ABC 上的一個注冊表項 HKLM/Software/MyCo
REG ADD HKLM/Software/MyCo /v Data /t REG_BINARY /d fe340ead
添加一個值(名稱: Data,類型: REG_BINARY,數據: fe340ead)
REG ADD HKLM/Software/MyCo /v MRU /t REG_MULTI_SZ /d fax/0mail
添加一個值(名稱: MRU,類型: REG_MUTLI_SZ,數據: fax/0mail/0/0)
REG ADD HKLM/Software/MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
添加一個值(名稱: Path,類型: REG_EXPAND_SZ,數據: %systemroot%)
注意: 在擴充字符串中使用插入符號 ( ^ )
reg add HKLM/System/CurrentControlSet/Services/HTTP/Parameters /v MaxConnections /t REG_DWORD /d 100000
reg add HKLM/SYSTEM/CurrentControlSet/services/NlaSvc/Parameters/Internet /v EnableActiveProbing /t REG_DWORD /d 1
2,reg delete 從注冊表刪除項或子項
語法:reg delete KeyName [{/v EntryName|/ve|/va}] [/f]
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在//ComputerName/PathToSubkey中的子項路徑前包含計算機名稱。忽略ComputerName會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM、HKCU、HKCR、HKU以及HKCC。
/v EntryName
刪除子項下的特定項。如果未指定項,則將刪除子項下的所有項和子項。
/ve
指定只可以刪除為空值的項。
/va
刪除指定子項下的所有項。使用本參數不能刪除指定子項下的子項。
/f
無需請求確認而刪除現有的注冊表子項或項。
/?
在命令提示符顯示幫助。
注釋
下表列出了reg delete操作的返回值。值說明
0成功
1失敗
范例
下面的范例說明了如何使用reg delete命令:
cmd /k reg delete "HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Image File Execution Options/taskmgr.exe" /f(任務欄里的任務管理器為灰色)
cmd /k reg delete "HKLM/SOFTWARE/Microsoft/Shared Tools/MSConfig/startupreg" /f(刪除MSConfig啟動里的未勾選項目)
cmd /k reg delete "HKLM/SOFTWARE/Microsoft/Windows NT/CurrentVersion/Image File Execution Options/ctfmon.exe" /f(刪除CTFMON的鏡像劫持)
cmd /k reg delete "HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/TrayNotify" /v IconStreams /f
cmd /k reg delete "HKCU/Software/Microsoft/Windows/CurrentVersion/Explorer/TrayNotify" /v PastIconsStream /f(刪除通知區域的歷史記錄)
3,reg compare 比較指定的注冊表子項或項
語法:reg compare KeyName1 KeyName2 [/v EntryName | /ve] {[/oa]|[/od]|[/os]|[on]} [/s]
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在//ComputerName/PathToSubkey中的子項路徑前包含計算機名稱。忽略ComputerName會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM、HKCU、HKCR、HKU以及HKCC。如果指定遠程計算機,則只可使用HKLM和HKU子目錄樹。
/v EntryName
比較子項下的特定項。
/ve
指定只可以比較沒有值的項。
{[/oa]|[/od]|[/os]|[on]}
指定不同點和匹配點的顯示方式。默認設置是/od。值說明
/oa指定顯示所有不同點和匹配點。默認情況下,僅列出不同點。
/od指定僅顯示不同點。這是默認操作。
/os指定僅顯示匹配點。默認情況下,僅列出不同點。
/on指定不顯示任何內容。默認情況下,僅列出不同點。
/s Separator
比較所有子項和項。
/?
在命令提示符顯示幫助。
注釋
下表列出了reg compare操作的返回值。值說明
0比較成功且結果相同。
1比較失敗。
2比較成功并找到不同點。
范例
下面的范例說明了如何使用reg compare命令:
reg compare "hkcu/software/microsoft/winmine" "hkcu/software/microsoft/winmine" /od /s
4,reg copy 將一個注冊表項復制到本地或遠程計算機的指定位置
語法:reg copy KeyName1 KeyName2 [/s] [/f]
參數
KeyName1
指定要復制子項的完整路徑。對于遠程計算機,請在//ComputerName/PathToSubkey中的子項路徑前包含計算機名稱。忽略ComputerName會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM、HKCU、HKCR、HKU以及HKCC。如果指定遠程計算機,則只可使用HKLM和HKU子目錄樹。
KeyName2
指定子項目的地的完整路徑。對于遠程計算機,請在//ComputerName/PathToSubkey中的子項路徑前包含計算機名稱。忽略ComputerName會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM、HKCU、HKCR、HKU以及HKCC。如果指定遠程計算機,則只可使用HKLM和HKU子目錄樹。
/s
復制指定子項下的所有子項和項。
/f
無需請求確認而直接復制子項。
/?
在命令提示符顯示幫助。
注釋
該版本的Reg在復制子項時無須請求確認。
下表列出了reg copy操作的返回值。值說明
0成功
1失敗
范例
下列范例說明了如何使用reg copy命令:
reg copy "hkcu/software/microsoft/winmine" "hkcu/software/microsoft/winminebk" /s /f
reg copy "hkcu/software/microsoft/winminebk" "hkcu/software/microsoft/winmine" /s
5,reg export 將指定子項、項和值的副本創建到文件中,以便將其傳輸到其它服務器
語法:reg export KeyName FileName
參數
KeyName
指定子項的完全路徑。Export操作僅可在本地計算機上工作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM、HKCU、HKCR、HKU以及HKCC。
FileName
指定要導出文件的名稱和路徑。該文件必須具有.reg擴展名。
/?
在命令提示符顯示幫助。
注釋
下表列出了reg export操作的返回值。值說明
0成功
1失敗
范例
下面的范例說明了如何使用reg export命令:
reg export "hkcu/software/microsoft/winmine" c:/data/regbackups/wmbkup.reg
6,reg import 將包含導出的注冊表子項、項和值的文件復制到本地計算機的注冊表中
語法:reg import FileName
參數
FileName
指定將復制到本地計算機注冊表中的文件的名稱和路徑。必須預先使用reg export命令創建該文件。
/?
在命令提示符顯示幫助。
注釋
下表列出了reg import操作的返回值。值說明
0成功
1失敗
范例
下面的范例說明了如何使用reg import命令:
reg import hkcu/software/microsoft/winmine" c:/data/regbackups/wmbkup.reg
7,reg load 將保存的子項和項寫回到注冊表的不同子項中
其目的是保存到一個臨時文件中,而該文件可用于注冊表項的疑難解答或編輯注冊表項。
語法:reg load KeyName FileName
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在//ComputerName/PathToSubkey中的子項路徑前包含計算機名稱。忽略ComputerName會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為HKLM
8,reg query 返回注冊表的子項下的項和下一層子項的列表
語法:reg query KeyName [{/v EntryName|/ve}] [/s]
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在 //ComputerName/PathToSubkey 中的子項路徑前包含計算機名稱。忽略 ComputerName 會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為 HKLM、HKCU、HKCR、HKU 以及 HKCC。如果指定遠程計算機,則只可使用 HKLM 和 HKU 子目錄樹。
/v EntryName
返回特定的項及其值。該參數只返回直接位于指定子項的下一層中的項。將會找不到當前子項下的子項中的項。如果省略 EntryName,則將返回子項下的所有項。
/ve
指定僅返回為空值的項。
/s
將返回各個層中的所有子項和項。如果不使用該參數,將只返回下一層的子項和項。
/?
在命令提示符顯示幫助。
注釋
下表列出了 reg query 操作的返回值。 值 說明
0 成功
1 失敗
范例
下面的范例說明了如何使用 reg query 命令:
reg query "hklm/system/currentcontrolset/control/session manager" /v maxstacktracedepth
reg query "hkcu/software/microsoft/winmine" /s
9,reg restore將保存的子項和項寫回到注冊表
語法:reg restore KeyName FileName
參數
KeyName
指定子項的完全路徑。Restore 操作僅在本地計算機上工作。以相應的子目錄樹開始路徑。有效子目錄樹為 HKLM、HKCU、HKCR、HKU 以及 HKCC。
FileName
指定將寫回到注冊表中的文件的名稱和路徑。必須使用帶 .hiv 擴展名的 reg save 操作預先創建該文件。
/?
在命令提示符顯示幫助。
注釋
該操作用于覆蓋已編輯的注冊表項。編輯注冊表項之前,請使用 reg save 操作保存父親子項。如果編輯失敗,則可以使用本操作恢復子項。
下表列出了 reg restore 操作的返回值。 值 說明
0 成功
1 失敗
范例
下面的范例說明了如何使用 reg restore 命令:
reg restore "hkcu/software/microsoft/winmine" wmbkup.hiv
10,reg save將指定的子項、項和注冊表值的副本保存到指定文件中。
語法
reg save KeyName FileName
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在 //ComputerName/PathToSubkey 中的子項路徑前包含計算機名稱。忽略 ComputerName 會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為 HKLM、HKCU、HKCR、HKU 以及 HKCC。
FileName
指定所創建的文件的名稱和路徑。如果未指定路徑,則使用當前路徑。
/?
在命令提示符顯示幫助。
注釋
下表列出了 reg save 操作的返回值。 值 說明
0 成功
1 失敗
范例
下面的范例說明了如何使用 reg save 命令:
reg save "hkcu/software/microsoft/winmine" wmbkup.hiv
11,reg unload 使用 reg load 操作刪除已加載的部分注冊表
語法:reg unload KeyName
參數
KeyName
指定子項的完全路徑。對于遠程計算機,請在 //ComputerName/PathToSubkey 中的子項路徑前包含計算機名稱。忽略 ComputerName 會導致默認對本地計算機進行操作。以相應的子目錄樹開始路徑。有效子目錄樹為 HKLM、HKCU、HKCR、HKU 以及 HKCC。
/?
在命令提示符顯示幫助。
注釋
下表列出了 reg unload 操作的返回值。 值 說明
0 成功
1 失敗
范例
下面的范例說明了如何使用 reg unload 命令:
reg unload "hkcu/software/microsoft/winminebk2"
新聞熱點
疑難解答