左侧展开的层次结构就是键路径,可以理解为目录,一个键就是分支中的一个目录,而子键就是这个目录中的子目录。子键同样是一个键,因为子目录下还可以有子目录。下图中的TCPIP6和Linkage就是键(子键)。
右侧的名称-类型-数据就是值项,可以理解为文件,一个键(子键)可以有一个或多个值项,其名称各不相同,如果一个值项的名称为空,则该值项为该键的默认值项。下图中的DependOnService就是值项的名称,REG_MULTI_SZ是值类型,其值为Tcpip。
DataItemName是值项的名称。如果该值项在注册表中不存在,则创建;如果存在,则覆盖其值。注意,值项的名称要用双引号引起来。
DataType、DataValue是值项的值,其中DataType为值类型,DataValue为具体值,DataType和DataItemName之间用=连接。REG_SZ类型的值需要标明DataType值类型,只需要用双引号引起来,例如"DataItemName1"="MicrosoftIPv6ProtocolDriver";其他类型不需要用双引号引起来,但需要添加值类型,值类型和具体值之间用冒号分隔,例如"DataItemName2"=hex(2):73,00,79,00,73,00,74,00,"DataItemName3"=hex(7):5c,00,44,00,65,00,76,00,"DataItemName4"=dword:00000006。
注册表的数据类型主要有以下五种:
显示类型
(在编辑器中)数据类型说明REG_BINARY二进制数二进制值,以十六进制显示REG_DWORD双字一个32位的二进制值,显示为8位的十六进制值,也可显示为10位十进制值REG_SZ字符串文本字符串REG_EXPAND_SZ可扩充字符串REG_MULTI_SZ多字符串含有多个文本值的字符串此外,注册表还有其他的数据类型,但是均不常用:
REG_DWORD_BIG_ENDIAN
REG_DWORD_LITTLE_ENDIAN
REG_FULL_RESOURCE_DESCRIPTOR
REG_QWORD
REG_FILE_NAME
如果要删除一个键(子键),只需要在RegistryPath头部添加字符-即可。例如使用如下语句删除上文中创建的子键try和abc,REG是支持递归删除的。2.2删除操作语法
WindowsRegistryEditorVersion5.00
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\try]
WindowsRegistryEditorVersion5.00如果要删除一个值项,只需要在DataItemName后面的等号后添加字符-即可。例如先使用下面第一段语句创建一个值项valueItem,然后用第二段语句删除该值项。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\try\abc]
"valueItem"="myvalue"
WindowsRegistryEditorVersion5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\try\abc]
"valueItem"=-
3.编辑REG文件2.3重命名操作语法
若要重命名键(子键)或值项,请先将其删除,然后使用新的名称创建一个新的键(子键)或值项。
文章一开始已经创建了一个空的REG文件,为了使其发挥作用,还需要编辑其内容。我们右键该文件,选择编辑或选择打开方式->记事本,即可打开REG文件。接着输入内容并保存就OK了。
现在以一个例子说明REG文件的使用方法。便如如下内容,保存后运行该REG文件,即可获得下图所示的结果。
WindowsRegistryEditorVersion5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\try\abc]
"valueItem1"="myvalue"
"valueItem2"=dword:00000014
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\TCPIP6\try]
"valueItem3"=hex(7):5c,00,44,00,65,00,76,00
4.补充知识
注册表有五个分支,下面是这五个分支的名称及作用:
名称作用HKEY_CLASSES_ROOT存储Windows可识别的文档类型的详细列表,以及相关联的程序HKEY_CURRENT_USER存储当前用户设置的信息HKEY_LOCAL_MACHINE包括安装在计算机上的硬件和软件的信息HKEY_USERS包含使用计算机的用户的信息HKEY_CURRENT_CONFIG这个分支包含计算机当前的硬件配置信息