Windows 注册表常用操作

1 添加一个主键(比如在HKEY_LOCAL_MACHINE\SOFTWARE\中添加一个ABCEDFGHIJKLMN主键)

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SOFTWARE\ABCEDFGHIJKLMN]

 

可以用中文,但是会被添加到最后(按字母排序的)

 

2 删除一个主键(只要在代码前面加一个负号即可,注意,如果你发现中文注册表删不掉或者添加不了,是因为你保存的时候没有保存为ASCII格式,UTF-8很容易造成乱码,这在下面添加键值还会讲到)

Windows Registry Editor Version 5.00

 

[-HKEY_LOCAL_MACHINE\SOFTWARE\ABCEDFGHIJKLMN]

[-HKEY_LOCAL_MACHINE\SOFTWARE\我是猪头三]

 

3 添加键值. 例如我们要在"HKEY_LOCAL_MACHINE\Software\ ABCEDFGHIJKLMN"主键下设置默认键值为"工作室",并分别添加"姓名"键值项目(字符串值)、"年龄"键值项目(二进制值)、"婚否"键值项目(DWORD值)。相应的REG文件内容如下:

Windows Registry Editor Version 5.00

 

[HKEY_LOCAL_MACHINE\SOFTWARE\ABCEDFGHIJKLMN]

@="工作室"

"姓名"="陶海"

"年龄"=hex:23

"婚否"=dword:00000000

添加之后效果如下

 

但是如果你的reg文件时UTF-8格式的,就会发现乱码啦

 

注意添加键值项目的操作如同注册表编辑器中的"新建"命令,一般来说,键值的数据类型分为三种:字符串值、二进制值和DWORD值。在REG文件中我们也要设置添加的键值项目的数据类型,如果要添加字符串值,则"="号后边要用英文的双引号引住数据;如果添加的为DWORD类型值,"="号后边的格式为"dword:数据";如果添加的为二进制值,"="号后边 reg文件则为"hex:数据"。要设置默认值的键值数据时,"="号前边的键值名称应为"@"符号,并且没有双引号。每一行前面有没有空格并没有影响。

 

如果添加的键值为路径相关的,要把\换成\\,比如下面

"scr"="C:\\PROGRAM ILES\\BOOBSOFT\\屏幕保护控制器\\屏幕保护控制器.exe"

 

注意,非法的值不会被添加!比如"scr"="\"则还是未设置"scr"="\\"则显示为"\"

 

 

4 修改键值,很简单,把刚才的添加键值的数据改一改就可以了,如果键名相同,系统会自动更新原有数据

 

5 删除键值,也很简单,比如要删除年龄和姓名,如下图所示即可。

 

最后,如何批处理,还不弹出提示框呢?比如我有下面几个reg文件,分别添加ABC,ABCDEF,ABCDEFGHI主键

注意:"XXX"=dword:00000000或"XXX"=dword:00000001而不能是模仿人家REG_DWORD:00000000

 

我再新建一个BAT文件,你可以直接执行,就可以导入这三个REG文件了,但是会有CMD的黑框,请注意,BAT文件还是要保存为ASCII格式,否则依旧会乱码,你可以在这个BAT文件最后加一个暂停看有没有乱码

regedit /S "批处理_1.reg"

regedit /S "批处理_2.reg"

regedit /S "批处理_3.reg"

pause

 

所以我再新建一个VBS文件去静默的执行这个BAT文件

Set shell = Wscript.createobject("wscript.shell")

a = shell.run ("批量导入注册表.bat",0)

 

这样就完成了批量导入注册表文件,但是想要做成安装软件的那种滚动条滚到头安装结束怎么弄呢?肯定不能这么搞啦,偶也不知道哦。

posted @ 2017-03-24 10:31  gary_tao  阅读(455)  评论(0编辑  收藏  举报
AmazingCounters.com 我要啦免费统计