INF文件是电脑中随处可见的文件,在大多数人的影响中,它好像与设备的驱动程序有关。实际上,INF文件除了可为设备安装驱动程序,还可以自动删除文件和修改注册表,甚至还可以制作免安装的绿色软件,然而让人意外的是这样一个文件竟是能用记事本打开的纯文本文件。
一、INF文件结构和功能
INF是Device Information File的缩写,是微软为硬件设备制造商发布驱动程序而开发的。INF文件是一个文本文件,它本身并不能驱动设备,真正的驱动程序文件是一些SYS、DLL、VXD格式的文件,但INF文件能在设备驱动的安装过程中指明这些文件存放在那里,安装到哪一个文件夹,怎样在注册表中加入驱动程序的相关信息等。
小提示:在操作系统的Windows目录下有一个名为INF的隐藏文件夹,在该文件夹下包含了很多即插即用设备的INF文件,这些文件记录了各种硬件的安装信息,包括设备类型,设备生产厂商名称,适用产品等信息。当Windows即插即用服务发现新硬件后,会根据相应的INF文件照单(到什么地方去复制文件,如何在注册表中添加信息等)安装设备的驱动程序。
INF文件由许多节(Section)组成,节名用方括号括起来,每个节又由一系列的条目组成,每个条目都由一个键(Key)和一个值(Value),都是“Key=Value”的形式(如图1)。INF文件中的这些键和值就像Html文件中的标签一样都有规定的功能,在其它程序的辅助下,它们可以完成文件的复制和删除,在注册表中添加和删除键值等,这也就是说,INF文件是一个安装脚本(Setup Script)文件,它可以完成如下三方面的任务。
⒈操作文件,包括复制、删除和重新命名文件等。
⒉修改注册表,包括添加和删除注册表键值等。
⒊修改重要的系统设置文件,如Autoexec.bat、Config.sys以及INI格式的配置文件等。
二、INF文件的使用方法INF文件是一个文本类型的安装脚本文件,它本身并不具备可执行性,要完成上述三方面的任务,得需要一个第三方程序来解释并执行。Windows自带了这样的程序(setupapi.dll),通过“文件夹选项”对话框你可看到它的踪影(如图2),因此,通过在INF文件的右键菜单上选择“安装”可以解释并执行INF文件中包含的脚本(如图3)。
INF文件的另外一种使用方法就是由其它程序直接调用,比如当我们在“控制面板”中双击“添加硬件”安装硬件驱动程序时,“添加硬件向导”就会调用并解释相应的INF文件并“照单”执行安装任务。
三、INF文件的应用事例INF文件的“本职工作”是完成硬件设备的配置和安装,但理解了它的结构、功能和使用方法以后,我们可以把它用在其它方面。来看下面的两个实例。
实例一:修改注册表
修改注册表常用的方法就是使用注册表编辑器或导入REG文件,但有时注册表编辑器和REG文件都会被锁定或禁用,比如有些恶意网站修改了你的IE选项后还会同时锁定注册表编辑器和禁止导入REG文件,以防止你修改被篡改了IE选项。遇到这种情况,INF文件就能大显身手。来看下面的代码:
[Version]
Signature="$CHICAGO$"
[Defaultinstall]
delREG=Gc
[Gc] HKCU,"Software\Microsoft\Windows\CurrentVersion\Policies\system","disableregistrytools","0x00010001","1"
把上面的这段代码复制到记事本,另存为一个INF文件,然后在该文件上单击右键,在弹出的菜单上选择“安装”,被锁定的注册表编辑器就会立即解锁。
INF文件是文本文件,可以用记事本手工制作,但INF文件的语法复杂难记,有没有简单的方法制作INF文件呢?可以把REG文件转换为INF文件。在网上有很多REG文件的代码,上述INF文件的代码就是由一个解除注册表锁定的REG文件转换而来,转换时需要下载一个小工具。
[1] [2]
Reg2Inf能把REG文件转换成INF文件。该软件安装后,会在REG文件的右键菜单上添加一个“转换为INF文件”的命令。使用时,把从网上找到的修改注册表的REG代码用记事本保存为REG文件,然后在该文件上单击右键,在弹出的菜单上选择该命令即可把REG文件转换为INF文件。
实例二:制作免安装软件
大多数软件在使用前都需要安装,但你知道在软件的安装过程中安装程序在后台都做了些什么吗?一般来说,普通的安装程序都具有解包,复制文件到特定的文件夹,修改注册表,修改系统或应用程序配置文件等功能。对于复制文件,修改注册表,修改配置文件等这些简单的功能,INF文件也能完成,因此利用INF文件可以制作免安装软件。在网上有很多软件就是用这种方法制作的,它们一般都是一些RAR格式的压缩包,解压后在其中的INF文件上单击右键,在弹出的菜单上选择“安装”就能可完成这类软件的安装。
因为安装一个软件需要涉及到复制文件,修改注册表等多种任务,因此写一个INF格式的安装脚本要写很多代码,需要熟练掌握INF文件的语法和各种键值,因此手写INF文件对一般用户来说有一定的难度,不过在网上已经有了这样的工具,使用它,即使菜鸟也能非常轻松地制作出利用INF文件作为安装脚本的绿色软件。
点击下载INF-Tool Lite 6.3
INF-Tool软件是一个向导式的软件,要制作一个INF安装脚本,需要8个步骤,如图4所示,依照标签序号,分别在这些标签上进行设置,不用手写一行代码,就能立刻生成一个INF安装脚本文件(在生成INF安装脚本的同时,你还可以生成一个反安装的INF脚本文件)。利用INF-Tool,我们除了可以制作免安装的绿色软件,还可以把所有需要安装的文件及INF文件封包到一个EXE文件中,安装时,双击该文件,安装程序就会依照INF文件照单安装,真是即简单有方便。
(出处:http://www.sheup.com)