REG文件实际上是一种注册表脚本文件,双击REG文件即可将其中的数据导入到注册表中。通过约定的格式,我们可以利用REG文件直接对注册表进行任何修改操作,而且它对注册表的操作可以不受 Regedit.exe 被禁用的限制,因此功能更为强大、灵活;此外,由于REG文件可以用任何文本编辑器/(如记事本/进行打开、编辑、修改,可以在发生错误的时候,通过改回REG文件中的数据后再导入,实现恢复操作,因此它更方便、安全。

REG文件对于注册表的操作可以归结为以下几种:新建主键、删除主键、新建键值、修改键值、删除键值。

reg 文件编写格式

.reg文件实际上是一个文本文件,.reg 文件具有以下语法:

  1. RegistryEditorVersion
  2. [RegistryPath1]
  3. @="DataType1:DataValue1"
  4. "DataItemName1"="DataType1:DataValue1"
  5. "DataItemName2"="DataType2:DataValue2"
  6. [RegistryPath2]
  7. "DataItemName3"="DataType3:DataValue3"
  1. 第一行为注册表版本,写成下面的字串即可

Windows Registry Editor Version 5.00

  1. 第二行和最后一行均为空行

新建项

  1. [路径\新主键名]

比如:

  1. [HKEY_CURRENT_USER\test]

删除项

  1. [-路径\主键名]

比如:

  1. [-HKEY_CURRENT_USER\test]

新建键值 或 修改键值

  1. [路径]
  2. "键名"="键值" (针对字符串型键值)
  3. "键名"=hex:键值 (针对二进制型键值)
  4. "键名"=dword:键值 (针对DWORD键值)
  5. "键名"=hex(2):键值 (REG_EXPAND_SZ)
  6. "键名"=hex(7):键值 (REG_MULTI_SZ)

比如:

  1. [HKEY_CURRENT_USER\test]
  2. @="Default项的文本 - Test"
  3. "reg_binary_test"=hex:E0,31
  4. "reg_dword_test"=dword:000000ff
  5. "reg_expand_sz_test"=hex(2):30,00,31,00
  6. "reg_multi_sz_test"=hex(7):30,00,31,00

删除键值

  1. [路径]
  2. "键名"=-

比如:

  1. [HKEY_CURRENT_USER\test]
  2. @=-
  3. "reg_binary_test"=-
  4. "reg_dword_test"=-
  5. "reg_expand_sz_test"=-
  6. "reg_multi_sz_test"=-

注意事项

  • 注意主键路径大小写
  • 键值类型一律为小写
  • 在创建字符串类型的键值时,如果字符串中包含路径分隔符,这个路径分隔符应该用双斜杠”\”表示
  • 若键值名为”默认”,则键值名用”@”表示,没有引号

写完保存为 *.reg 文件然后双击导入即可。

参考资料