版权声明:本文为博主原创文章,未经博主允许不得转载。
REG文件实际上是一种注册表脚本文件,双击REG文件即可将其中的数据导入到注册表中。通过约定的格式,我们可以利用REG文件直接对注册表进行任何修改操作,而且它对注册表的操作可以不受Regedit.exe被禁用的限制,因此功能更为强大、灵活;此外,由于REG文件可以用任何文本编辑器/(如记事本/进行打开、编辑、修改,可以在发生错误的时候,通过改回REG文件中的数据后再导入,实现恢复操作,因此它更方便、安全。
怎么做?
REG文件对于注册表的操作可以归结为以下几种:新建主键、删除主键、新建键值、修改键值、删除键值,我们分别来看一下。以下实际操作以在Windows2000/XP中为例。
1.新建主键
引用内容例如我们想在主键[HKEY_CURRENT_USER/Soft-ware]下新建一个名叫“新建主键名称”的主键。那么,我们可以打开记事本,写入如下内容:
WindowsRegistryEditorVer-sion5.00
[HKEY_CURRENT_USER/Software/新建主键名称]
输入完成后另存为一个形如“*.reg”的文件,再双击将其导入到注册表中,我们可以立杆见影地看到修改后的效果。
2.删除主键
引用内容要用REG文件在注册表中删除一个主键,方法是在[]中的主键路径前面加上一个-符号即可。值得注意的是,删除主键操作将会一并删除该主键下的所有子键及其键值项目。例如要删除我们刚才添加的那个主键,可以在记事本上输入下面的内容:
WindowsRegistryEditorVer-sion5.00
[-HKEY_CURRENT_USER/Software/新建主键名称]
接下来,只要另存为一个*.reg文件,并双击将其导入注册表中即可立即生效。
3.新建键值
引用内容在注册表编辑器右侧的键值项窗口空白处单击右键,选择“新建”菜单项,可以看到这些键值被细分为:字符串值、二进制值、DWORD值等几种类型。
字符串值(REG_SZ),该值一般用来作为文件描述和硬件标志,可以是字母、数字,也可以是汉字,但它是长度固定的文本字符串,最大长度不能超过255个字符。REG文件中一般表现为:“a”=“****”。二进制值(REG_BINARY),一般情况下,大多数硬件组件信息以二进制数据存储,然后通过十六进制的格式显示在注册表编辑器中。该类型值没有长度限制,可以是任意字节长,REG文件中一般表现为:“a”=hex:01,00,00,00。
DWOED值(REG_DWORD),设备驱动程序和服务的许多参数都是此类型,以二进制、十六进制或十进制格式显示在注册表编辑器中。REG文件中一般表现为“a”=dword:00000001。
如果你用的操作系统是Win-dowsXP,那么除了字符串值、二进制值、DWORD值外,你可能还会看到多字符串值、可扩充字符串值两种键值类型,不过这两种基本不用,在这里不做介绍。在上面我们已经了解了常见的键值以及它在REG文件中的表现格式,下面我们就来详细看看如何新建键值。
要新建一个键值项,必须要指明该键值所在的分支,该键值的名称、该键值的类型和该键值的值/(数据/。例如要在分支[HKEY_CUR-RENT_USER/Software]下新建一个名叫“REG文件测试”的主键,并设置默认键值为“test”,并分别添加“字符串”键值项目/(字符串值/、“二进制”键值项目/(二进制值/、“双字节”键值项目/(DWORD值/。你可以这么写:
WindowsRegistryEditorVer-sion5.00
[HKEY_CURRENT_USER/Software/REG文件测试]
@=“test”“字符串”=“CeShi”“双字节”=hex:01,00,00,00“Dword值”=dword:00000001在REG文件中,Dword值用dword表示,二进制值用hex表示,字符串值直接用引号把内容括起来就行。值得注意的是,键值类型如dword、hex等也都必须用小写,此外,如果在创建字符串类型的键值时,如果该字符串中包含路径分隔符,这个路径分隔符必须用双斜杠“//”表示。还有就是,在Reg文件中,默认键值是用@表示的,并且没有引号。
4.修改键值
引用内容修改一个键值项和创建一个新键值的方法是类似的,只要在REG文件中,更改相应数据就可以了。例如我们要将上例中的Dword值改为00000000,我们可以这么写:
WindowsRegistryEditorVer-sion5.00
[HKEY_CURRENT_USER/Software/REG文件测试]
“Dword值”=dword:00000000
在我们执行导入操作之后,新的数据会自动覆盖旧的数据,比如在本例中,会自动用00000000将00000001替换掉。
5.删除键值
引用内容用REG文件删除键值项目也是通过-号实现的,只要把-符号放在键值项目的等号后面就行了。我们要删除图2所示中我们添加的几个键值项目,我们可以这么写:
WindowsRegistryEditorVer-sion5.00
[HKEY_CURRENT_USER/Software/REG文件测试]
@=“test”“字符串”=-“双字节”=-“Dword值”=-注意到等号后面的减号了吧,这就是删除的意思。
如:要删除[HKEY_CURRENT_USER/Software/REG文件测试]下的“test”项,就这样写:
WindowsRegistryEditorVer-sion5.00
[HKEY_CURRENT_USER/Software/REG文件测试]
"test"=-
那么,怎么写.reg文件呢?我们需要一个文本编辑器,用windows的记事本就可以了。单击鼠标右键,选择新建文本文档,然后在生成的文本文件里输入上面规格的内容就可以了,最后,选择另存为,输入你想要的文件名+.reg保存即可。比如你要生成test.reg,输入test.reg保存即可,你可以看到生成了一个带图标的test.reg.双击运行这个test.reg文件就能相应的修改注册表了,系统会提示“是否导入注册表”之类的信息,确定就可以了。OK,我们可以手动写注册表了,是不是感觉很酷?