通过INF文件修改注册表
软件世界
大家都知道,通过编缉一个REG文件并导入的方法可以修改注册表,但恐怕很多人都不知道通过INF文件也可修改注册表。
实现过程:用记事本编缉一个文本,输入的内容每行之间要有个空行。编完后保存为*.inf(*表示任意名)文件,然后用鼠标右键单击这个INF文件,选择“安装”。现在打开你的注册表看看,是不是发生了变化?
下面笔者将举例说明如何通过INF文件修改注册表。对于每个例子笔者写出了文本中应输入的内容,例子中每行内容之间要有一个空行。
一、增加注册表的某个键
[VERSION]
SIGNATURE=$CHICAGO$
[DEFAULTINSTALL]
ADDREG=MY.ADD.REG
[MY.ADD.REG]
HKCU,Software\Microsoft\Windows\sky
HKCU,Software\Microsoft\Windows\sky,kkk,0,c:\windows
HKCU,Software\Microsoft\Windows\sky,kkk,1,01,00,00,00
①[VERSION]是文件头,SIGNATURE=$CHICAGO$是指针对Windows(CHICAGO是Windows 9X的内部名称)。
要编辑注册表必须以这两句开头。
②[DEFAULTINSTALL]段指出INF文件包含的其他段,ADDREG是键,有特殊意义,它指出要添加的注册表项段名。
③“HKCU,Software\Microsoft\Win- dows\CurrentVersion\sky”指在HKCU,Software\Microsoft\Windows这个路径下增加一个名为sky的子键。
④“HKCU,Software\Microsoft\W-indows\sky,kkk,0,c:\windows”指在sky这个子键下增加一个名为kkk的字符串值,其值为“c:\windows”,kkk后面的0表示键值的类型为字符串值,也可用2来表示。
⑤“HKCU,Software\Microsoft\W-indows\sky,aaa,1,01,00,00,00”指在sky这个主键下增加一个名为aaa的二进制值,值为“01 00 00 00”,aaa后面的1表示键值的类型为二制值,也可用3来表示,要注意的是表示二进制值的数字必须每两位用逗号分隔开。
二、删除注册表的某个键
[VERSION]
SIGNATURE=$CHICAGO$
[DEFAULTINSTALL]
DELREG=MY.DEL.REG
[MY.DEL.REG]
HKCU,Software\Microsoft\Windows\sky,kkk
HKCU,Software\Microsoft\Windows\sky
①前三行跟上例一样,不再赘述。
②DELREG是键,有特殊意义,它指出要删除的注册表项段名。
③“HKCU,Software\Microsoft\W-indows\sky,kkk”指从键sky中删除值项kkk(kkk可以是任意类型值)。
④“HKCU,Software\Microsoft\Wind-ows\sky”删除键sky及其下面全部子键,即删除全部分支。
另外,要修改某个键值,如要把HKCU,Software\Microsoft\Windows\sky下kkk这个键的值改为“c:\windows\system”,只需参照上例把“c:\windows”改为“c:\windows\system”。存为INF文件安装后,新的键值会便覆盖原来的键值。