阅读:5957回复:8
INF文件的编写规则
INF文件的编写规则
INF文件即Device Information File(设备信息文件),主要用来指示安装Windows驱动程序,一般一个INF文件需要配合一个INF文件才可进行安装。 INF 文件是Windows系统下用来描述设备或文件等数据信息的文件,是一个文本文件。INF的组成有节(Sections)、键(Key)和值(value)3部分,INF文件的节按照层次结构排列,以方括号的形式开始,后面紧跟该节的各个项和值。INF文件的节主要分为以下: 1.【Version】 INF文件的开始,版本信息描述 【Version】节位于INF文件的开始处,描述了版本信息,主要用于版本控制,主要有Signature项,Class项和ClassGuid项。 Signature项定义了INF工作于何种操作系统,主要选项有$Windows NT$、$Windows 95$、$Chicago$,一般选择$Chicago$即可; Class项,用于指明驱动程序的所属类别。 ClassGUID项,用于指明设备类别的GUID,这些GUID的值是固定的,可以参见Microsoft的官方网站,http://msdn2.microsoft.com/en-us/library/ms791134.aspx。 CatalogFile项,指明数字签名文件的文件名,其扩展名为.Cat。 DriverVer项,指明驱动程序的版本信息,格式为mm/dd/yyyy [,x,y,v,z]。 2.源文件盘符节【SourceDisksNames】 该节罗列源文件所在的盘符序列码、盘描述府、盘卷标号和盘序列号。,该节内的语法为: disk_ordinal=”disk_discription”,disk_label,disk_serial_number disk_ordinal为必选项,是盘符序列码,标识一个源盘,具有唯一性,一般可以设置为从1开始递增的整数。 Disk_decription为必选项,是盘描述符,用双引号括起来的字符串描述盘的内容,安装时将显示该字符串提示用户。 Disk_label 为源盘的卷标 Disk_serial_number 未使用,但必须设置为0 3. 源文件节【SourceDisksFiles】 该节指定安装时使用的源文件和盘符序列码、盘描述符。该节的语法为: file-name=disk-number,[subdir][,file-size] file-name为必选项,是源盘上文件的名称 disk-number是包含file-name指定文件所在的源盘的盘符序列码,该盘符号序列码需在【SouceDiskNames】节中给出,并大于或等于1 SubDir为可选项,指定文件所在源盘的子目录 4.目标磁盘节【DestinationDirs】 指定CopyFiles、RenFiles或者DelFiles入口的缺省操作目录,其语法格式如下: file-list-selection=LDID, [SubDir] 其中LDID的取值决定目录,常见的是取01表示目录为当前目录,10表示目录为Windows目录,11表示目录为系统目录。 5.供应商节【Manufacturer】 供应商节用于指明供应商及其对应的Models节的名称,其各项的格式如下: %strkey%=ModelsName 6.默认的安装节【DefaultInstall】 该节指明添加的注册表的子节,等号后面为自定义节名,包含如下几项。 LogConfig Log表示日志文件配置 CopyFiles 表示复制文件 RenFiles 表示文件改名 DelFiles 表示删除文件 AddReg 表示添加注册项 DelReg 表示添加注册项 7.字符串 该节定义了字符串变量,当某些字符频繁的出现在INF文件中时,为简化输入,可以在该节中定义一个字符串变量,用该字符串代表该字符出现在INF文件中,其定义格式如下: StrKey=”String” 以下将以一个INF文件为例,说明INF文件的编写,读者可以直接将其中的YourCompany和YourService替换,直接生成所需的INF文件 ; YourService.Inf - install information file ; Copyright ?2007 YourCompany Ltd [Version] Signature="$CHICAGO$" Class=Unknown Provider=%YourCompany% DriverVer=05/19/2007,1.0.5.0 [SourceDisksNames] 1="YourCompany YourService Driver Install Disk",,, [SourceDisksFiles] YourService.sys=1 [Manufacturer] %YourCompany%=YourCompany.YourService [YourCompany.YourService] %DeviceDesc%=YourService, [DestinationDirs] YourService.Files=10,System32\Drivers YourService.Files.NTx86=10,System32\Drivers ;;Windows 98 [YourService] CopyFiles=YourService.Files AddReg=YourService.AddReg LogConfig=YourService.LogConfig1,YourService.LogConfig2 [YourService.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,YourService.sys [YourService.Files] YourService.sys [YourService.LogConfig1] ConfigPrority=DESIRED IOConfig=370-372 [YourService.LogConfig2] ConfigPrority=NORMAL IOConfig=370-372 ;Windows 2000 [YourService.NTx86] CopyFiles=YourService.Files.NTx86 LogConfig=YourService.LogConfig1,YourService.LogConfig2 [YourService.Files.NTx86] YourService.sys,,,%COPYFLG_NOSKIP% [YourService.NTx86.Services] AddService=YourService,0x00000002,YourService.AddService [YourService.AddService] DisplayName=%YourService.ServiceName% ServiceType=1 StartType=3 ErrorControl=1 ServiceBinary=%10%\System32\Drivers\YourService.sys LoadOrderGroup=Base [Strings] YourCompany = "Your Compay" YourService.ServiceName="YourService Driver " DeviceDesc="YourService" ![]() |
|
最新喜欢:![]() |
驱动中牛
![]() |
沙发#
发布于:2008-01-03 15:01
顶一下吧!
|
板凳#
发布于:2008-03-20 13:52
![]() ![]() |
|
|
地板#
发布于:2008-04-01 13:10
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
|
地下室#
发布于:2009-09-15 08:18
支持一下!
|
|
5楼#
发布于:2009-12-17 17:26
我给你顶起来
|
|
6楼#
发布于:2010-01-18 12:20
顶一下。
|
|
7楼#
发布于:2010-03-03 12:45
收藏
![]() |
|
8楼#
发布于:2010-04-13 16:11
对于一个inf文盲来说,这份资料太好了。
|
|