admin 管理员组文章数量: 887039
2024年2月21日发(作者:特别军事行动)
用批处理修改注册表方法0000000
如何用批处理修改注册表方法二则2009-12-31 10:05echo
[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionInternet SettingsZones3]>>o "1803"=dword:00000000>>以上生成REG文件.del
还可以:写一个注册表文件,放在一个位置..然后批处理导入:@echo offexit
先学习一下如何使用.REG文件来操
000
00000000
regedit /s 运行REG后删除之.000
0000000
0000000
00000000regedit /s 注册表文件路径000000
000000说明:/s是不弹出确认提示直接导入
00000000作注册表.(我们可以用批处理来生成一个REG文件)
关于注册表的操作,常见的是创建、修改、删除。1.创建
00000000
00000000创建分为两种,一种是创建子项(Subkey)
我们创建一个文件,内容如下:
Windows Registry Editor Version 5.00
0000000
00000000[HKEY_LOCAL_MACHINESOFTWAREMicrosofthacker]
0000000然后执行该脚本,你就已经在
HKEY_LOCAL_MACHINESOFTWAREMicrosoft下创建了一个名字为"hacker"的子项。
0000000
另一种是创建一个项目名称
式一致,内容如下:
00000000那这种文件格式就是典型的文件格式,和你从注册表中导出的文件格00000000
00000000Windows Registry Editor Version 5.00
onRun]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersi00000000"Invader"="Ex4rch"
"Autodos"=dword:02
这样就在00000000"Door"=C:
0000
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun]下 新建了:Invader、door、about这三个项目
0000000
0000000Invader的类型是"String value"
door的类型是"REG SZ value"
2.修改
Autodos的类型是"DWORD value"
00000000
0000000
00000000修改相对来说比较简单,只要把你需要修改的项目导出,然后用记事本进行修改,然后导入(regedit /s)即可。
3.删除
000
我们首先来说说删除一个项目名称,我们创建一个如下的文件:
000000
00000000Windows Registry Editor Version 5.00
onRun]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersi00000000"Ex4rch"=-
0000000执行该脚本,[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun]下的"Ex4rch"就被删除了;
0000000
我们再看看删除一个子项,我们创建一个如下的脚本:
00000000
00000000Windows Registry Editor Version 5.00
ionRun]
[-HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVers000000执行该脚本,[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun]就已经被删除了。
000000
相信看到这里,.reg文件你基本已经掌握了。那么现在的目标就是用批处理来创建特定内容的.reg文件了,记得我们前面说道的利用重定向符号可以很容易地创建特定类型的文件。
0000
samlpe1:如上面的那个例子,如想生成如下注册表文件
0000000Windows Registry Editor Version 5.00
onRun]
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersi00000000"Invader"="Ex4rch"
"door"=hex:255
只需要这样:
00"Autodos"=dword:000000128
0000000
00000000
000@echo Windows Registry Editor Version 5.00>>
00000@echo
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun]>
00000000
00000000@echo "Invader"="Ex4rch">>
@echo "door"=5>>C:>>
00000000@echo "Autodos"=dword:02>>
samlpe2:
00
00000000我们现在在使用一些比较老的木马时,可能会在注册表的
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun(Runonce、Runservices、0000000Runexec)]下生成一个键值用来实现木马的自启动.但是这样很容易暴露木马程序的路径,从而导致木马被查配置好地IRC木马DSNX为例(名为)
00杀,相对地若是将木马程序注册为系统服务则相对安全一些.下面以000000
@start
@echo
0000000@attrib +h +r
000000[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun] >>
0000000
@echo "windsnx "=- >>
00000000@ create Windriversrv type= kernel start= auto
displayname= WindowsDriver binpath=
c:
@regedit /s
@delete
00
00000000
000000
@REM [删除DSNXDE在注册表中的启动项,用将之注册为系统关键性服务的同时将其属性设为隐藏和只读,并config为自启动]
@REM 这样不是更安全.
怎么用批处理命令删注册表里的键值或用命令的方法删注册表值?
0000000
0000000REG DELETE KeyName [/v ValueName | /ve | /va] [/f]
00000000KeyName [Machine]FullKey
0000000Machine 远程机器名 - 忽略当前机器的默认值。
远程机器上只有 HKLM 和 HKU。
FullKey ROOTKEYSubKey
0000000
0000000
0000000ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下的注册表项的全名。
ValueName 所选项下的要删除的值的名称。
/ve 删除空白值名称的值(默认)。
/va 删除该项下的所有值。
/f 不用提示就强行删除。
例如:
0
000000
省略时,该项下的所有子项和值都会被删除。
000
00
0000000REG DELETE HKLMSoftwareMyCoMyAppTimeout
删除注册表项 Timeout 及其所有子项和值
0000000
REG DELETE ZODIACHKLMSoftwareMyCo /v MTU
00000000删除 ZODIAC 上 MyCo 下的注册表项 的参数
00
filename 导入 .reg 文件进注册表
/e 导出注册表文件
0000000/s 导入 .reg 文件进注册表(安静模式)
0
000例:regedit /e HKEY_LOCAL_MACHINESYSTEM
00000/L:system 指定
/R:user 指定
0000000
00000000
隐藏导入注册表信息用regedit /s 即可出了其命令行参数及其使用方法。
00000000在DOS提示符下键入Regedit命令,将出现一个帮助屏幕。此屏幕给00000000
语法:Regedit[/L:system][/R:user]filename1
Regedit[/L:system][/R:user]/Cfilename2
0000000Regedit[/L:system][/R:user]/Efilename3[regpath]
0000000其中:
/L:system指定文件的存放位置。
/L:user指定文件的存放位置。
filename1指定引入注册表数据库的文件名。
/Efilename3指定导出注册表文件的文件名。
00000000
000000
00000000/Cfilename2指定形成注册表数据库的文件名。
0regpath指定导出注册表文件的开始关键字(缺省为全部关键字)
00000现举几个例子说明在DOS下的使用方法。
00000000
【例1】将系统注册表数据库registry导出到文件中。
000000
000000regedit/
000【例2】形成系统注册表数据库registry(全部)中。
00000regedit/
000000
0000000【例3】将引入系统注册表数据库中(部分)。
000000
【例4】将CJH开始的关键字导出注册表数据库,并命名为。
000000regedit/
0000000
【例5】指定system/dat存放在D:PWIN中和存放在E:PWIN中,将数据文件形成一个新的注册表数据库registry。
0000000
00000000regedit/L:D:PWIN/R:E:PWIN/
有了以上这些知识,结合在《对注册表进行编程的“捷径”》里讲过的关于导入或导出的注册表文件(*.REG),我们就可以在DOS方式下对注册表进行编程了。
000000
我们还是以更改“*.txt”文件的默认打开方式——“记事本”为“写字板”为例。首先在MS-DOS提示符下导出“HKEY_CLASSES_ROOTtxtfile”子键这一分支,即执行命令:
000
0000
0000000regedit/Y_CLASSES_ROOTtxtfile
有的“C:”全部改成
然后用DOS下的EDIT编辑器打开文件进行编辑:将其中所“C:”,存盘退出EDIT,再在命令行下执行命令:
XP上新加的注册表操作命令
ADD
000000
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator]
[/d Data] [/f]
KeyName [Machine]FullKey
00远程机器的机器名 - 忽略默认到当前机器。
远程机器上只有 HKLM 和 HKU。
FullKey ROOTKEYSubKey
ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下注册表项的完整名
/v 所选项之下要添加的值名
/ve 为注册表项添加空白值名<无名称>
/t RegKey 数据类型
0000
0000000
00000000[ REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
0000000
000000REG_NONE | REG_EXPAND_SZ ]
如果忽略,则采用 REG_SZ
000000
/s 指定一个在 REG_MULTI_SZ 数据字符串中
用作分隔符的字符
/d 要分配给添加的注册表 ValueName 的数据
/f 不用提示就强行改写现有注册表项
例如:
REG ADD ABCHKLMSoftwareMyCo
000000
00000000如果忽略,则将 "0" 用作分隔符
000添加远程机器 ABC 上的一个注册表项 HKLMSoftwareMyCo
00000
REG ADD HKLMSoftwareMyCo /v Data /t REG_BINARY /d fe340ead
000000
添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)
000000
REG ADD HKLMSoftwareMyCo /v MRU /t REG_MULTI_SZ /d fax0mail
000000
000添加一个值(名称: MRU,类型: REG_MUTLI_SZ,数据: fax0
00000
COMPARE
00000000
REG COMPARE KeyName1 KeyName2 [/v ValueName | /ve] [Output] [/s]
000000
KeyName [Machine]FullKey
远程机器上只有 HKLM 和 HKU
FullKey ROOTKEYSubKey
000
0000000Machine 远程机器名 - 省略当前机器的默认值
000000
0000000
0000000如果没有指定 FullKey2,FullKey2 则跟 FullKey1 相同
ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下的注册表项的全名
省略时,该项下的所有值都会得到比较
/ve 比较空白值
/s 比较所有子项和值
Output [/oa | /od | /os | /on]
省略时,只显示不同的结果
/od 只显示不同的结果
/os 只显示匹配结果
/on 不显示结果
返回代码:
0 - 成功,比较的结果相同
1 - 失败
例如:
REG COMPARE HKLMSoftwareMyCoMyApp
HKLMSoftwareMyCoSaveMyApp
000000
ValueName 所选注册表项下的要比较的值的名称
000
0000000
0000000
0000/oa 显示所有不同和匹配结果
00000000
000000
000000002 - 成功,比较的结果不同
0000000将注册表项 MyApp 下的所有值跟 SaveMyApp 比较
REG COMPARE HKLMSoftwareMyCo HKLM
COPY
KeyName [Machine]FullKey
远程机器上只有 HKLM 和 HKU
FullKey ROOTKEYSubKey
00000000REG COPY KeyName1 KeyName2 [/s] [/f]
0000000Machine 远程机器名 - 忽略当前机器的默认值
000000
0000000
0000000ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下的注册表项的全名
/s 复制所有子项和值
例如:
REG COPY HKLMSoftwareMyCoMyApp
HKLMSoftwareMyCoSaveMyApp /s
0000000
/f 不用提示就强行复制
000
将注册表项 MyApp 下的所有子项和值复制到注册表项 SaveMyApp
000000
REG COPY ZODIACHKLMSoftwareMyCo HKLM
DELETE
000
0000000REG DELETE KeyName [/v ValueName | /ve | /va] [/f]
0000000
KeyName [Machine]FullKey
远程机器上只有 HKLM 和 HKU
FullKey ROOTKEYSubKey
00000000Machine 远程机器名 - 忽略当前机器的默认值
000000
0000000
0000000ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下的注册表项的全名
ValueName 所选项下的要删除的值的名称
/ve 删除空白值名称
/va 删除该项下的所有值
/f 不用提示就强行删除
例如:
00000000
省略时,该项下的所有子项和值都会被删除
0
000
REG DELETE HKLMSoftwareMyCoMyAppTimeout
删除注册表项 T
LOAD
KeyName ROOTKEYSubKey (只是本地机器的)
ROOTKEY [ HKLM | HKU ]
册表项
0000
0000000REG LOAD KeyName FileName
00000000
SubKey 要将配置单元文件加载进的注册表项名称。创建一个新的注00000000FileName 要加载的配置单元文件名
0000000
您必须使用 REG SAVE 来创建这个文件
0000000
QUERY
KeyName [Machine]FullKey
0000000REG QUERY KeyName [/v ValueName | /ve] [/s]
Machine 远程机器名 - 忽略当前机器的默认值
远程机器上只有 HKLM 和 HKU
0
0000000FullKey 格式为 ROOTKEYSubKey
000000ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下的注册表项的全名
/v 查询特定注册表项
0000000
000000
00000000ValueName 所选项下的要查询的值的名称
省略时,该项下的所有值都会得到查询
/s 查询所有子项和值
RESTORE
00000000
0000000
/ve 查询默认值或空白值名称
0
0000000REG RESTORE KeyName FileName
KeyName ROOTKEYSubKey (只是本地机器)
0000000ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
0SubKey 要将配置单元文件还原到的注册表项全名。
00000000改写现有项的值和子项
FileName 要还原的配置单元文件名
0000000您必须使用 REG SAVE 来创建这个文件
0000000
SAVE
KeyName ROOTKEYSubKey
000
0000000REG SAVE KeyName FileName
0000000ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下的注册表项的全名
000000
FileName 要保存的磁盘文件名。如果没有指定路径,
0000000文件会在调用进程的当前文件夹中得到创建
UNLOAD
00
REG UNLOAD KeyName
00000000KeyName ROOTKEYSubKey (只是本地机器的)
ROOTKEY [ HKLM | HKU ]
000
0000000SubKey 要卸载的配置单元的注册表项名称
reg add "项" /v(value的缩写) 值 /t(type) reg_dword(默认是eg_sz) /d(data的缩写) "要插入的数据值" /f(forbiden的缩写,即强制的意思)
例如
0000000
00000000
reg add "HKLMSYSTEMCurrentControlSetControlSession" /v
test /t reg_dword /d 1 /f
这句命令就是往你的注册表
000
00000000HKLMSYSTEMCurrentControlSetControlSession
这个项下面新建一个 reg_dowrd 类型的值,名字为test,数据为 1
000000
00000000/f 表示在运行如果注册表里已经有这个值也不会提示你,直接修改,
000000如果没有这个参数的话,它会提示你是不是要修改
0 0
00000
版权声明:本文标题:用批处理修改注册表方法[宝典] 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1708473416h525391.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论