作者在 2007-03-29 19:51:00 发布以下内容
INF文件的语法解说
INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。
INF的功能
1 复制文件、删除文件、或重新命名文件。 2 新增或删除注册表(Registry)中的项目。 3 修改重要的系统设置文件(如 Autoexec.bat、Config.sys、.INI 等)
INF的规则
INF是纯文本文件,它是分节的,这点和INI文件类似,每节以"[]"扩起来,每一个节名最长为255个字符(Windows 2000/XP/2003操作系统中)或28个字符(Windows 98操作系统中)。在节与节之间的内容叫条目,每一个节又是由许多的条目组成的,每一个条目都由=分开,如a="b"。如果每一个条目的等号后有多个值,则每一个值之间用","号分隔开。INF对大小写不敏感,行注释语句命令是";",类似VB里的'。如果一行写不下,使用""来换行。
INF的运行
.INF文件是由Windows的SetupAPI解释执行的脚本文件,它的运行过程很简单,是一种线性的执行,线性的意思就是.INF文件的运行过程不存在分支语句,也就是没有条件语句,一旦开始执行,就是沿着固定的路线运行。它的运行是按照节为单位来执行的,从某一个[Install]节开始执行,从上到下执行该节中的条目,如果该条目是一个节,那么就一条条执行子节中的条目,如此递归执行。在WINDOW上运行只要右击这个文件,点击安装即可。
INF的语法结构
;指定版本和签名节 [VERSION] ;系统根据Signuture看是不是适合当前版本,如果适合的话就执行,否则不执行,当然强制安装是可以的 ;用于WIN9X Signature="$CHICAGO$" ;WINNT+ ;Signature="$Windows NT$" ;指定安装文件布局,该行是可选的,如果没有提供布局信息文件,则在INF文件内必须包含[SourceDisksNames]和[SourceDisksFiles]节 LayoutFile=filename.inf [SourceDisksNames]节 [SourceDisksNames]节罗列源文件所在盘符序列码、盘描述符、盘卷标号和盘序列号。 [SourceDisksNames]节内语句的语法为: disk-ordinal=“disk-description”,disk-label,disk-serial-number 其中disk-ordinal为必选项,是盘符序列码,标识一个源盘,具有惟一性,一般可设置为从1开始递增的整数,0不是一个有效的盘符序列码。当存在多个源盘时,盘符序列码之间不能重复。 disk-description为必选项,是盘描述符,用双引号括起的字符串或字符串宏描述盘的内容或目的。安装引擎将该字符串显示在对话框内以提示用户。 disk-label为源盘的卷标识。 disk-serial-number未使用,但必须被设置为0。 [SourceDisksFiles]节 [SourceDisksFiles]节指定安装时使用的源文件和盘符序列码、盘描述符。 [SourceDisksFiles]节内语句的语法为: file-name=disk-number[,subdir] [,file-size] 其中file-name为必选项,是源盘上文件的名称。 disk-number是包含file-name指定文件所在源盘的盘符序列码,该盘符序列码需在[SourceDisksNames]节中列出,并大于或等于1。 Subdir为可选项,指定文件所在源盘的子目录,如省略则源盘为缺省安装路径。 file-size为可选项,表明文件的大小,以字节为单位。
[DestinationDirs] ;指定CopyFiles、RenFiles或DelFiles入口的缺省操作目录 ;语法file-list-section=LDID,[Subdir] ;LDID列表如下: ;01 ;current directory ;04 ;backup directory ;10 ;windows directory ;11 ;system dir ;12 ;iosubsys ;13 ;command ;14 ;control panel directory ;15 ;printers directory ;16 ;workgrou dir ;17 ;inf dir ;18 ;help dir ;19 ;administration dir ;20 ;fonts ;21 ;viewers ;22 ;vmm32 ;23 ;color dir ;25 ;shared dir ;26 ;winboot ;28 ;host winboot ;30 ;root of boot drive ;31 ;root of host drive of a virtual boot drive ;32 ;old windows dir if exists
;以下例子为安装到windowweb目录下 ;DefaultDestDir=10,"web" ;[Install]节提供了一个INF文件安装过程的总览,它识别文件内其他包含安装信息节的详细动作,是Windows内建安装函数识别安装过程和内容的真正入口 [Install] ;[Install]节分[DefaultInstall]和[OtherInstall]两类 ;[DefaultInstall]节节名DefaultInstall如前面表
|