日期:2014-05-17  浏览次数:20748 次

如何使用批处理实现对注册表的操作
我想要将HKEY_LOCAL_MACHINE\SAM\SAM\domains\account\users\000001f4下F的数据复制给HKEY_LOCAL_MACHINE\SAM\SAM\domains\account\users\000003ef下的F
请问如何实现?

------解决方案--------------------
呵呵,我知道怎么在cmd下写,读没怎么研究,不过应该很简单,你自己查查帮助嘛,下面是几个例子:
写注册表:
reg add "HKLM\SOFTWARE\aa\bb" /v "tagname" /t reg_sz /d "test" /f
删注册表:
reg delete "HKLM\SOFTWARE\aa\bb" /v "tagname" /f

后面附一个reg命令的用法,自己查吧(下面有个reg copy,这个应该很适合你这种情况)
reg命令是WindowsXP提供的,它可以添加、更改和显示注册表项中的注册表子项信息和值。


reg add 将新的子项或项添加到注册表中


语法:reg add KeyName [v EntryNameve] [t DataType] [s separator] [d value] [f]


参数

KeyName

指定子项的完全路径。对于远程计算机,请在ComputerNamePathToSubkey中的子项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为HKLM、HKCU、HKCR、HKU以及HKCC。


值 说明 
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指定为数据类型且需要列出多个项时,请使用该参数。如果没有指定,将使用默认分隔符为。

d value

指定新注册表项的值。

f

不用询问信息而直接添加子项或项。



在命令提示符显示帮助。

注释

该操作不能添加子树。该版本的Reg在添加子项时无需请求确认。

下表列出了reg add操作的返回值。值说明

0成功

1失败


范例

(补充,cmd k 为在运行中使用reg命令)

下列范例说明了如何使用reg add命令:


cmd k reg add HKLMSoftwareMicrosoftWindowsCurrentVersionexplorerAdvancedFolderHiddenSHOWALL v Checkedvalue t reg_dword d 1 f(显示隐藏的文件和文件夹)

cmd k reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun v systray t REG_SZ d %SystemRoot%system32systray.exe f(开机启动音量控制)

cmd k reg add HKLMSOFTWAREMicrosoftWindows NTCurrentVersionWinlogon v Shell t REG_SZ d %SystemRoot%explorer.exe f(开机启动explorer外壳程序)

cmd k reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun v SoundMan t REG_SZ d %SystemRoot%SOUNDMAN.exe f(开机启动AC97音效管理员程序)

cmd k reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionApp PathsIEXPLORE.EXE ve d %ProgramFiles%Internet ExplorerIEXPLORE.EXE t REG_SZ f

(UC房间打不开广播)

cmd k reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionApp PathsMSCONFIG.EXE ve d %SystemRoot%PCHealthHelpCtrBinariesMSConfig.exe t REG_SZ f

(运行MSConfig提示找不到文件)

cmd k reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionApp Pathswmplayer.exe ve d %ProgramFiles%Windows Media Playerwmplayer.exe t REG_SZ f

(不能正常调用WMP播放器的修复)

cmd k reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionApp PathsWORDPAD.EXE ve d %ProgramFiles%Windows NTAccessoriesWORDPAD.EXE t REG_SZ f

(不能正常调用写字板的修复)

cmd k reg add HKCUSoftwareMicrosoftWindowsCurrentVersionRun v ctfmon.exe t REG_SZ d %SystemRoot%system32ctfmon.exe f(开机启动输入法程序CTFMON)

cmd k reg add HKCUControlPanelDesktop v WaitToKIllAppTimeOut t REG_SZ d 10000 f(加速关闭应用程序)



reg delete 从注册表删除项或子项


语法reg delete KeyName [{v EntryNameveva}] [f]


参数

KeyName

指定子项的完全路径。对于远程计算机,请在ComputerNamePathToSubkey中的子项路径前包含计算机名称。忽略ComputerName会导致默认对本地计算机进行操作。以相应的子目录树开始路径。有效子目录树为HKLM、HKCU、HKCR、HKU以及HKCC。

v EntryName

删除子项下的特定项。如果未指定项,则将删除子项下的所有项和子项。

ve

指定只可以删除为空值的项。

va

删除指定子项下的所有项。使用本参数不能删除指定子项下的子项。

f

无需请求确认而删除现有的注册表子项或项。



在命令提示符