注册表:基本概念和reg文件

基本概念

windows的注册表可以看作是一个树形结构的数据库。

树的节点叫做(key);
其下的子节点,叫做子键或子项(subkey);
每个节点可以有很多属性,叫做值项(value);
每个值项由名称(name)、数据类型(datatype)和数据(data)组成。

在注册表编辑器(Regedit.exe)中,数据结构显示如下:
在这里插入图片描述
其中,command键是open键的子键,
(默认)表示该值是默认值,值名称为空,其数据类型为REG_SZ,数据值为%systemroot%\system32\NOTEPAD.EXE “%1”

以上信息的意义是:扩展名txt类型的文件在右键菜单里的“打开”一项使用的程序是NOTEPAD.EXE。


REG文件

用reg文件可以变成修改注册表,其有固定语法。

插入注册表项或值(空行不要省略)

RegistryEditorVersion

[项路径1]
"属性name1"="DataType1:DataValue1"
"属性name2"="DataType2:DataValue2"

[项路径2]
"属性name3"="DataType3:DataValue3"

其中,RegistryEditorVersion——

  • 要么是Windows 2000、 Windows XP 和 Windows Server 2003 的:Windows Registry Editor Version 5.00

  • 要么是Windows 98 和 Windows NT 4.0 的:REGEDIT4

REGEDIT4头还在基于 Windows 2000、Windows XP、Windows Server 2003 的计算机上工作。

删除注册表项和值

删除用连字符 -

要删除项在项名前加-,如删除注册表项Test︰

[-HKEY_LOCAL_MACHINE\Software\Test]

要删除注册表值,在值名等号后放一个连字符 -

"TestValue"=-

数据类型(此节待整理)

DataTypen是数据类型注册表值,并紧随等号。
对于 REG_SZ (字符串值) 以外的所有数据类型,紧跟一个冒号数据类型。
如果数据类型是 REG_SZ,则不包括数据类型值或冒号。在这种情况下Regedit.exe 假定为数据类型 REG_SZ

下表列出了典型的注册表数据类型︰

数据类型 在.reg 的数据类型
REG_BINARY 十六进制
REG_DWORD Dword
REG_EXPAND_SZ hexadecimal(2)
REG_MULTI_SZ hexadecimal(7)
posted @ 2019-01-02 17:11  xuejianbest  阅读(739)  评论(0编辑  收藏  举报