2024年3月31日发(作者:)
㈠、INF文件是什么
.INF是DeviceInformationFile(设备信息文件)的缩写,是微软公司为供硬件设备制
造商发布其设备驱动程序而发展的———许多硬件设备的驱动程序都是使用.INF文件来安
装的。.INF文件从Windows3.X时代就开始大量被使用了。(说明:绿色部分可以忽略,
仅做说明。蓝色部分为重点突出,文中要点,红色部分为特别注意,看仔细哦。)
先看这个最常见的.INF文件哈:
;示例04寒夜孤星【自动播放】
[AutoRun]
open=
icon=%SystemRoot%,27
怎么样?没有比这个再简单的.INF文件了吧?这个就是所有.INF中最知名的啦!用于
自动播放滴.INF,通常位于根目录下。那么.INF是不是就很简单了捏?也不是。如果你不
怕头晕的话,就接着看下去哈。。。
.INF文件是一种具有特定格式的纯文本文件,我们可说它是一种安装脚本
(SetupScript)。虽然.INF只是纯文本文件,但是当我们在文件管理器explorer对.INF文
件按鼠标右键后,在右键菜单上就会出现“安装I”命令。
此“安装”动作关联命令行程序基本形式为:
RunDll//,InstallHinfSectionsectionreboot-mode
inf-name
其中,rundll/rundll32程序以命令行的形式调用Windows的动态链接库,其命令格式为:
/
/是安装API(SetupAPI)函数库,/与其后的
入口点用逗号(,)分开,入口点是大小写敏感的。
Section是INF文件内初始执行节名,首先执行该节内容,默认情况下名称为“DefaultInstall”,系统用
户一般不宜对此做任何改动,如被改动,则在后续INF文件的Install节使用相应修改后的名称。
reboot-mode是重启动参数,指示在INF文件执行后对系统的设置进行了改变,操作系统是否重新启
动。该参数一般设为132或4,即由安装程序决定是否必须重启动,因为某些设置的改变必须在重启动后
才能生效。
inf-name是INF文件的名称,“%1”即为所选中文件本身。
WindowsXPSP3下为(示例):%SystemRoot%
setupapi,InstallHinfSectionDefaultInstall132%1
说明:rundll及在win9x系列的操作系统使用。在以后的讲解中不再区分这些。。。
这是因为微软公司已在其操作系统Windows中内置提供了SetupAPI(可以解释.INF
脚本文件/,/是安装API(SetupAPI)函数库,
包含了InstallHinfSection、SetupGetInfSections、SetupInstallFromInfSection、
SetupPromptForDisk、SetupDiCreateDevRegKey等INF文件内部语法检查、节名搜索、注册
键创建等功能函数。),我们只需用文本编辑软件编写.INF文件,便可完成大部份的安装
工作,所以尤其是在软体的大小并不是很大的情况下,安装工作不是很复杂的时候,使
用.INF文件来进行安装工作将会是一个好选择。而且如果要安装设备驱动程序,.INF文件
是目前唯一的选择。可以用.INF文件创建包括注册表条目和目的目录的自定义软件安装指
令。.INF文件可以提供有限的平台独立性,并指定有限的软件依赖性。目前.INF文件最普
遍的应用是为安装硬件设备的驱动程序服务的,本文的目的就是介绍.INF文件的功能、结
构、并提供了几个事例来说明如何用.INF文件,如何扩展.INF文件的用途,比如制作绿色
软件,仅供参考。
驱动层次模型:
I/O管理器
文件驱动
中间层驱动
设备驱动
硬件抽象层
下面首先给出一个驱动程序的.INF文件的例子,华尔特F18型摄像头驱动(本人滴),
是我从摄像头驱动安装程序中抽取出来的用于WinXP的系统安装的文件,删
除了大部分内容,紧紧保留了一个基本的.INF文件的框架。


发布评论