精华内容
下载资源
问答
  • 佳能canon lbp7200cd打印机驱动程序是一款可以有效解决佳能canon lbp7200cd打印机使用过程中出现的一些问题的驱动工具,本站提供了佳能canon lbp7200cd驱动下载地址,有需要的朋友们可以前来下载使用。 canon lbp...
  • 我从购买了HOP-E801热敏票据打印机,但是编译的linux驱动程序32位系统上构建的,因此过滤器将无法Raspberry Pi 3上使用CUPS打印。它们随它一起发送的小CD上似乎是一个分支(可能很好,因为许多热敏打印机共享...
  • Pebble 手表应用程序,用于控制由驱动的 3D 打印机 下载 你有几个选择。 您可以从源代码构建它以获取最新功能(只有 Pebble iOS 应用程序尚未更新的情况下才会如此)。 您可以 Pebble 应用程序商店中搜索它或到...
  • Hasar财务打印机的CUPS驱动程序 目前,它仅适用于Hasar打印机,但是如果您有一点帮助,我们可以使其所有品牌和型号上使用! 如何从我的程序或控制台打印? 简单的: lp -d fiscal_printer_name archivo_de_...
  • INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含...安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册 表中加入自身相关信息等等。安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安装。当我们通过"开始→控制面板→添加删除程序→Windows安装程序"来添加系统组件的时候,INF
     文件将会自动调用。而在其他场合下,则需要在INF文件上点击鼠标右键,然后选择"安装",你才能顺利安装应用程序。

      在C:/Windows/INF文件夹中存放有大量的INF文件。该文件夹一般处在隐含状态,如果你想查看该文件夹,可选择"查看→文件夹选项→查看 ",然后在"文件和文件夹"选项下选择"显示所有文件"。

      解剖INF文件的结构

      INF文件其实是一种纯文本文件,可以用任意一款文本编辑软件来打开进行编辑,如:记事本、写字板等。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来编写的。

      *规则一:INF文件是分节的,每一个INF文件有许多的节组成,节名用方括号括起来。这些节名有些是系统定义好的,有一些是用户自定义的。每一个节名最长为255个字符(Windows 2000/XP/2003操作系统中)或28个字符(Windows 98操作系统中)。节与节之间没有先后顺序的区别,另外,同一个INF文件中如果出现两个同样的节名,则系统会自动将这两个节名下面的条目合并到一起。 

      *规则二:在节与节之间的内容叫条目,每一个节又是由许多的条目组成的,每一个条目都是由形如"signature="$CHICAGO$""的形式组成的。如果每一个条目的等号后有多个值,则每一个值之间用","号分隔开。

      *规则三:INF文件对大小写不敏感。

      *规则四:";"号后面的内容为注释。

      *规则五:如果一个条目的内容过多,在一行无法书写完全,则用"/"将一行内容书写为多行。

      明白了INF文件的规则后,让我们一起来解剖INF文件的结构。

      1.Version节

      每一个INF文件都包含一个这样的节,该节中的条目主要是描述此INF文件支持的设备类型和适用的操作系统。在该节中如果出现"signature=" $CHICAGO$""这样的条目则表示该INF文件适用于Windows 98之后的所有操作系统,如果包含"signature="$Windows NT$""这样的条目则表示该INF文件适用于Windows 2000/XP/2003操作系统,而且两者必具其一。

      另外,该节中"CLASS"条目很重要,它表明了设备的类型,常见的类型有: Display(显示设备,如显卡)、Media(多媒体设备,如声卡)、Net(网络设备,通常是网卡)、Modem(调制解调器)、Printer (打印设备)、Imag e(图像捕获设备,如摄像头)。

      2.Manufacturer节

      该节中的条目主要是描述INF文件可以识别的所有硬件设备,其中包含有设备的生产厂家,以便设备的正确安装。如"%ATi%=ATi"指明设备的生产商为"ATi",这个大家都不会陌生吧,是显卡的生产商。

      3.SourceDisksNames节

      该节主要指明安装文件所在的介质。如:"1="ATi Drivers Release CD""表明所有驱动程序都在零售版的CD盘上。

      4.SourceDiskFiles节

      驱动程序文件列表及被安装的位置,该节必须结合[SourceDisksNames]节才能知道具体的位置。如"atinbtxx.sys=1",则你必须到[DestinationDirs]节去查看"1"具体代表那个位置。

      5.DestinationDirs节

      INF文件会指示安装程序在安装的过程中,将一些文件复制到硬盘上,或者将硬盘上的一些文件删除、重命名等。该节即指定了为实现上述目的的文件所在的目的路径。

      6.DefaultInstall节和Install节

      在这一节中描述了设备驱动程序与硬件设备的实际属性。默认情况下,首先执行[DefaultInstall]节,该节指定了要复制或删除的文件,注册表的更新,INF文件的更新等等信息,同时又包含指向其他节的指针。

      7.String节

      这一节中定义了字符串变量,当某些字符串频繁地出现在INF文件中,为简化输入,可以在该节中定义一个字符串变量,代表该字符串出现在INF文件中。 

      读懂INF文件

      下面让我们以ATi显卡的用于Windows XP的WDM驱动程序为例来说明一下INF文件的具体含义,由于INF文件往往很长,为了说明方便,我们删除了一些大部分的信息,仅保留一个INF文件的结构,如图所示。


      INF文件精彩实例

      光说不练不行,下面让我们来看几个INF文件的典型应用。

      1.打开"锁"定的注册表

      第一步:打开记事本程序,输入以下内容:

      [version]

      signature="$chicago$"

      [defaultinstall]

      delReg=DeleteMe

      [DeleteMe]

      HKCU,"Software/Microsoft/Windows/CurrentVersion/Policies/System", "DisableregstryTools"

      HKLM,"Software/Microsoft/Windows/CurrentVersion/Policies/System", "DisableregstryTools"

      输入完毕,另存为UNLOCK.INF,名字任取,扩展名必须是INF。

      第二步:在"UNLOCK.INF"文件上右键单击,在弹出的右键菜单中点选"安装",如图所示,被锁的注册表即会应声而开。


      2.巧妙利用INF文件自动备份重要的文件

      大家都知道,注册表是Windows操作系统的命根子,因此,系统启动时会自动运行注册表检查程序,自动更新备份注册表文件。在系统盘的Windows目录中有一个"Scanreg.ini", Scanregw.exe每天所执行的默认操作都是在它的 控制下运行的,我们可以利用这一原理实现对我们重要文件的备份。

      第一步:打开资源管理器,找到该文件,用记事本程序打开它。我们可以清楚地看到共有五个参数,如图所示。

      (1)Backup 这个参数值可为0或1,默认为1。值为1表示在每天首次启动时扫描注册表,值为0表示不进行任何注册表操作。

      (2)Optimize 这个参数值可为0或1,默认为1。值为1表示每次扫描注册表时删除注册表中的多余数据,从而优化注册表数据,值为0表示不进行删除操作。

      (3)ScanregVersion=0.0001 程序版本说明。

      (4)MaxBackupCopies 这个参数用来设置建立的备份文件的个数,值为5至99中的任一个数,默认值为5,即最大可建立五个备份文件,为更好的保护系统,一般来说设置10个左右为宜。

      (5)BackupDirectory 这个参数用来设置备份文件存放的目录,默认存放目录为Windows/Sysbckup,注意这里填写的必须是完整路径。

      (6)Files 在"Scanreg.ini"的最后有如下注释内容";Files=[dir code,]file1,file2,file3",将其前面的注释符号";"去掉,你就可以自己DIY需要注册表检查程序备份的重要文件了。默认情况下,注册表检查程序创建注册表备份文件时,会将"system.dat"、"system.ini"、"user.d at"和"win.ini"四个文件保存在"cab"压缩文件中,如果你需要将其他重要的系统配置文件添加到此压缩文件中,可在"Files="后面输入 "[目录代码],文件名1,文件名2,文件名3",文件名之间以逗号相隔,目录代码含义如下:

      10 代表C:/Windows目录

      11 代表C:/Windows/System目录

      30 代表C盘根目录

      31 代表Windows系统所在盘的根目录

      例如要把Autoexec.bat和Config.sys两个文件放到备份文件中,可设置参数为"File=30,config.sys, autoexec.bat"。3.硬盘(U盘)也需个性化

      第一:给硬盘(U盘)DIY一个可爱的图标

      我们首先将硬盘的生硬图标替换为我们喜欢的图标,给硬盘披上美丽的彩衣。首先准备一图标文件,你可以用图标制作程序制作自己的图标文件,也可以使用现成的图标文件,最好是保存到硬盘某一个分区的根目录下。接着打开记事本程序,录入以下内容:

      [autorun]

      ICON=******.ICO

      其中"******"是图标文件的路径及图标文件名,请自行修改为具体的图标文件的路径及图标文件名。录入完毕,另存为"Autorun.inf", 并将其剪切到某一个你欲扮酷的分区的根目录下。

      第二:让硬盘能歌善舞

      想不想当你双击了硬盘分区或是点右键选择右键菜单中的"自动播放"之后,如图3所示,就自动打开音乐播放程序,开始播放音乐文件,让动听的音乐时刻环绕在你的左右。心动了吧,其实十分简单,Come On。


      接着在"Autorun.inf"文件中录入以下内容:

      OPEN=D:/Program Files/foobar2000/

      foobar2000.exe d:/qs.fpl

      其中"D:/Program Files/foobar2000/

      foobar2000.exe"是笔者喜爱的播放器Foobar2000的具体位置,如果你用的是Winamp或其它的播放器,请替换为具体的播放器所在的位置,"d:/qs.fpl"是Foobar2000播放器的播放列表文件,你也可以替换为某一个具体的音乐文件所在的路径。如果你用的是Winamp则播放列表文件应是"*.m3u"。利用此方法也可以设置当双击硬盘分区时自动播放影视文件。

      4.无人值守安装Windows 98

      在Windows 98安装光盘中有一个Batch工具,可以制作用于无人值守安装的脚本,即生成一个包含安装Windows 98时需要和安装向导进行交互的各种信息的INF文件——Msbatch.inf。

      首先找到位于Windows 98安装光盘"/tools /reskit/batch"目录中的"setup"程序图标安装Batch98工具。

      接着,运行Batch工具,按照向导提示生成"msbatch.inf"文件,并将该文件保存到软盘中。具体的生成方法请参考有关资料,这里不再赘述。

      当需要重新安装Windows 98时,用启动盘进入到DOS提示符下,将保存有"msbatch.inf"文件的软盘插入软驱,将Windows 98安装光盘插入光驱,在DOS提示符后键入如下命令:"x:/win98/setup a:msbatch.inf",回车后即可。其中"X"为光驱和盘符。

      5.将屏保请进右键菜单

      当我们有事暂时离开一会儿,利用设有密码的屏幕保护程序可以保护我们当前的操作不被他人偷看。但是,在默认的设置中,屏幕保护程序最快也要在1分钟以后才能够启动,那么怎样才能快速激活屏幕保护程序呢?

      最常见的方法是在桌面上建立一个启动屏保的快捷方式,在需要时双击即可启动。另外,我们还可以将屏保请进右键菜单!

      第一步:打开记事本程序,录入以下内容:

      [version]

      signature="$chicago$"

      [defaultinstall]

      AddReg=AddMe

      [AddMe]

      HKCR,"CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/pingbao",,,"屏幕保护"

      HKCR,"CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/pingbao/ COMMAND",,,"ssstars.scr /S /"%1/""

      录入完毕,经检查无误后,另存为"PingBao.inf",文件名可任取,扩展名必须是INF。

      第二步:在"PingBao.inf"文件上右键单击,在弹出的右键菜单中点选"安装"。

      第三步:当需要运行屏幕保护的时候,回到桌面上,在"我的电脑"图标上点击右键选择"屏幕保护"选项,如图所示。点击一下试试,是不是立即启动屏幕保护程序了。


      注意:其中的"ssstars.scr"为欲启动的屏幕保护程序的文件名,请用你喜欢的屏幕保护程序文件来替换;如果你点选右键菜单中的"屏幕保护" 选项后,没有反应即没有启动屏幕保护程序,请将文中的"/S /"%1/""修改为"/"%1/" /S"即可。

      6.将磁盘管理程序请进右键菜单

      对磁盘进行定期的整理是我们经常要做的一项工作,每次都是按部就班地点击"开始→程序→附件→系统工具→磁盘碎片整理程序",然后在弹出的选择驱动器窗口中选择要整理的分区,再点击"碎片整理"按钮开始整理。这样比较麻烦,我们可以试一试将磁盘管理程 序添加到右键菜单。

      第一步:打开记事本程序,输入以下内容:

      [version]

      signature="$chicago$"

      [defaultinstall]

      AddReg=addMe

      [AddMe]

      HKCR,"/Drive/shell/磁盘整理/command",,,"defrag.exe %1"

      输入完毕,另存为AddDefrag.INF,名字任取,扩展名必须是INF。

      第二步:在"AddDefrag.INF"文件上右键单击,在弹出的右键菜单中点选"安装"。

      第三步:以后要进行磁盘整理,只需打开资源管理器,在相应的盘符上点右键,在弹出的右键菜单中选择"磁盘整理"即可(如图)。


      7.解决ATi显卡无法安装公版驱动的问题

      有些第三方的ATi显卡无法安装公版的驱动程序,造成该问题的原因是多方面的,如有些第三方厂商在硬件上做了改动,采用了非公版的PCB设计和 BIOS等,这都可能会导致无法安装公版驱动程序的情况发生。当你的显卡遇到这个问题该怎么办呢?

      首先将你下载的ATi显卡驱动程序解压缩到硬盘任一目录下,在"ATiDrive"子目录中找到会列出所有的inf文件,ATiixpxx.inf—— 适用于Windows XP,ATii9xxx.inf——适用于Windows 9x ,ATii2kxx.inf适用于Windows 2000 。

      接着打开操作系统对应的INF文件,通过菜单栏的编辑——查找功能,查找"ati.mfg"字符串,随后会看到"RADEON 7000、RADEON 7200、RADEON 7500、RADEON 8500"等条目信息,将其删除。

      接着查找与你的显卡匹配的字符串,如笔者的RADEON 7500显卡,就查找"RADEON 7500",找到如下信息:"RADEON 7500=ati2mtag_RV200,PCI/VEN_1002&&&&DEV_5157&& &&SUBSYS_013A1002",将"&&&&SUBSYS_013A1002"删除,保存文件。

      现在再试试,看问题是不是解决了。

      8.在命令行下安装INF文件

      通常情况下,我们都是在Windows环境下安装INF文件的,但是假如有一天,你需要在命令行运行INF文件该怎么办呢?

      在命令行提示符后输入" rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 INF文件所在的路径及文件名.inf ",回车后即可安装相应的INF文件
    展开全文
  • 驱动设计-INF文件

    2009-08-20 22:35:44
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件...安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是I...
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操 作。在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册表中加入自身相关信息等等。 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安 装。当我们通过“开始→控制面板→添加删除程序→Windows安装程序”来添加系统组件的时候,INF文件将会自动调用。而在其他场合下,则需要在 INF文件上点击鼠标右键,然后选择“安装”,你才能顺利安装应用程序。  

      在C:/Windows/INF文件夹中存放有大量的INF文件。该文件夹一般处在隐含状态,如果你想查看该文件夹,可选择“查看→文件夹选项→查看”,然后在“文件和文件夹”选项下选择“显示所有文件”。

      解剖INF文件的结构

      INF文件其实是一种纯文本文件,可以用任意一款文本编辑软件来打开进行编辑,如:记事本、写字板等。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来编写的。

      * 规则一: INF 文件是分节的,每一个 INF 文件有许多的节组成,节名用方括号括起来。 这 些节名有些是系统定义好的,有一些是用户自定义的。每一个节名最长为255个字符(Windows 2000/XP/2003操作系统中)或28个字符(Windows 98操作系统中)。节与节之间没有先后顺序的区别,另外,同一个INF文件中如果出现两个同样的节名,则系统会自动将这两个节名下面的条目合并到一起。

      * 规则二:在节与节之间的内容叫条目,每一个节又是由许多的条目组成的,每一个条目都是由形如 “signature="$CHICAGO$"” 的形式组成的。如果每一个条目的等号后有多个值,则每一个值之间用 号分隔开。

      * 规则三: INF 文件对大小写不敏感。

      * 规则四: 号后面的内容为注释。

      * 规则五:如果一个条目的内容过多,在一行无法书写完全,则用 “\” 将一行内容书写为多行。
      明白了INF文件的规则后,让我们一起来解剖INF文件的结构。
    1. Version
    每一个INF文件都包含一个这 样的节,该节中的条目主要是描述此INF文件支持的设备类型和适用的操作系统。在该节中如果出现“signature="$CHICAGO$"”这样的条 目则表示该INF文件适用于Windows 98之后的所有操作系统,如果包含“signature="$Windows NT$"”这样的条目则表示该INF文件适用于Windows 2000/XP/2003操作系统,而且两者必具其一。
    另外,该节中“CLASS”条 目很重要,它表明了设备的类型,常见的类型有:Display(显示设备,如显卡)、Media(多媒体设备,如声卡)、Net(网络设备,通常是网 卡)、Modem(调制解调器)、Printer(打印设备)、Image(图像捕获设备,如摄像头)。2 Manufacturer
    该节中的条目主要是描述INF文件可以识别的所有硬件设备,其中包含有设备的生产厂家,以便设备的正确安装。如“%ATi%=ATi”指明设备的生产商为“ATi”,这个大家都不会陌生吧,是显卡的生产商。
    3 SourceDisksNames
    该节主要指明安装文件所在的介质。如:“1="ATi Drivers Release CD"”表明所有驱动程序都在零售版的CD盘上。
    4 SourceDiskFiles
    驱动程序文件列表及被安装的位置,该节必须结合[SourceDisksNames]节才能知道具体的位置。如“atinbtxx.sys=1”,则你必须到[DestinationDirs]节去查看“1”具体代表那个位置。
    5 DestinationDirs
    INF文件会指示安装程序在安装的过程中,将一些文件复制到硬盘上,或者将硬盘上的一些文件删除、重命名等。该节即指定了为实现上述目的的文件所在的目的路径。
    6 DefaultInstall 节和 Install
    在这一节中描述了设备驱动程序与硬件设备的实际属性。默认情况下,首先执行[DefaultInstall]节,该节指定了要复制或删除的文件,注册表的更新,INF文件的更新等等信息,同时又包含指向其他节的指针。
    7 String
    这一节中定义了字符串变量,当某些字符串频繁地出现在INF文件中,为简化输入,可以在该节中定义一个字符串变量,代表该字符串出现在INF文件中。

    ----------------------------------------------------------------------
    INF文件的组成有节(Sections),键(Key)和值(value)三部分。 
    关键节有 
    [ Version ] 版本描述信息,主要用于版本控制。 
    [ Strings ] 字符串信息,用于常量定义。 
    [ DestinationDirs ] 定义系统路径信息。 
    [ SourceDisksNames ] 指明源盘信息。 
    [ SourceDisksNames ] 指明源盘文件名。 
    [ DefaultInstall ] 开始执行安装。 
    其它的节可以自定义,下面用一实例来具体讲解。 


    程序代码 
    [ Version ]  
    Signature
    = $Chicago$ 
    Provider
    = %Author% 

    [ Strings ]  
    Product
    = " 添加文件关联演示 "  
    Version
    = " 1.0 "  
    Author
    = " Xunchi "  
    Copyright
    = " Copyright 2005 "  
    CustomFile
    = " inf "   ; 修改您需要的文件名后缀 
    Program = " NOTEPAD.EXE "   ; 修改您需要关联的应用程序名 

    [ Add.Reg ]  
    HKCR
    , " . " %CustomFile% , "" , FLG_ADDREG_TYPE_SZ  , %CustomFile%File 
    HKCR
    , %CustomFile%File , "" , FLG_ADDREG_TYPE_SZ , 安装信息 
    HKCR
    , %CustomFile% " File\shell " , "" , FLG_ADDREG_TYPE_SZ , open 
    HKCR
    , %CustomFile% " File\shell\open\command " , "" , FLG_ADDREG_TYPE_SZ , %program% % 1  

    [ DefaultInstall ]  
    AddReg
    = Add.Reg 

      在
    [ Version ] 节中 " Signature " 项定义了该INF文件需要运行在何种操作系统版本中。有$Windows NT$ ,  $Chicago$ ,  or $Windows  95 $三个值供选择,一般选择$Chicago$即可。项Provider中定义了该文件的创作来源,%Author%指引用Author项的值。您也可自定其它项来描述该INF文件的版本信息。该INF文件的作用是关联文件,所以主要是对注册表的操作,我们来看 [ Add.Reg ] 节,共四条语句,格式都是一样。HKCR表示根HKEY_CLASSES_ROOT,第二个参数是子键的路径名,第三个参数是表明值的类型,最后是值(具体见附表)。以上都是对操作的定义与过程,在节 [ DefaultInstall ] 中 是开始执行要安装的流程,AddReg表明是对注册表进行操作,操作对象是Add.Reg节中的定义。如果您把AddReg换成DelReg则是删除注册 表中的键值。当鼠标单击该INF文件在弹出的菜单中选择“安装”就开始执行您所定义的操作。该示例在系统的INF文件右键菜单中增加了查看编辑功能并设置 了默认动作,因为在安装了不了解的INF文件有可能对系统产生不良的影响,这样双击文件就可打开编辑该文件了。 


      再看看INF文件在文件操作方面的能力吧。请看下面的一个例子。 

    程序代码 
    [ Version ]  
    Signature
    = $Chicago$ 
    Provider
    = %Author% 
    [ Strings ]  
    Product
    = " 文件复制和安装演示 "  
    Version
    = " 1.0 "  
    Author
    = " Xunchi "  
    Copyright
    = " Copyright 2005 "  

    [ FileList ]  
    ProcessList.exe 
    ; 此文件已在当前目录下,下同。 

    [ FileList1 ]  
    Wordpad.exe 
    [ DestinationDirs ]  
    FileList
    = 11   ; 安装到Windows的系统目录 
    FileList1 = 10   ; 安装到Windows目录 
    [ DefaultInstall ]  
    Copyfiles
    = FileList , FileList1 

      相同的节的作用与上一例类似,请注意新出现的节
    [ FileList ] ,这是我自定义的节名,它表示了一个文件组, [ FileList1 ] 也类似。在节 [ DestinationDirs ] 中需定义每个文件组复制到的目录(各个常量的意义见附表)。Copyfiles指明了需要进行复制的文件组。 
      INF文件的操作还包括服务(NT系统)程序的安装和卸载,INI文件的转换等。由于这些操作都比较的复杂和繁琐,且有一定的危险性故下次有机会再向大家进行深入探讨。 
      最后我们来看一下INF文件的执行机制,这时你也许要问不就是简单的执行一下“安装”吗?知其然不知其所以然知识水平是不会提高的。在“文件夹选项”中的“文件类型”找到INF文件的“安装”命令看到一串命令。“rundll32.exe setupapi
    , InstallHinfSection DefaultInst_all  132  % 1 ” 它表示了运行Dll文件setupapi.dll中的命令InstallHinfSection并传递给它起始节的名字 DefaultInstall。 可见起始节是可以自定义的。INF文件的执行也可用在各种支持API调用的编程工具中。至此INF文件的结构和运行机制我们已基本了解,现在就让你的思维 开动起来,让它更好的为我们工作吧。 


    注册表操作的常量定义: 
    ---------------------------------------------------------- 
    常量 根值 
    HKCR HKEY_CLASSES_ROOT. 
    HKCU HKEY_CURRENT_USER. 
    HKLM HKEY_LOCAL_MACHINE. 
    HKU HKEY_USERS. 
    ----------------------------------------------------------- 
    FLG_ADDREG_APPEND 在多字符串后添加字符 
    FLG_ADDREG_TYPE_SZ 字符类型 
    FLG_ADDREG_TYPE_MULTI_SZ 字符串类型 
    FLG_ADDREG_TYPE_EXPAND_SZ 扩展字符串类型 
    FLG_ADDREG_TYPE_BINARY 二进制值 
    FLG_ADDREG_TYPE_DWORD DWord值 
    FLG_ADDREG_TYPE_NONE NULL值 
    ---------------------------------------------------------- 


    [ DestinationDirs ] 节中所定义的常量路径 
    ---------------------------------------------------------- 
    01  源目录(后跟路径) 
    10  Windows目录 
    11  Windows系统目录 
    12  驱动目录 
    17  INF文件目录 
    18  帮助文件目录 
    20  字体目录 
    21  根目录 
    24  应用程序目录 
    25  共享目录 
    30  当前根目录 
    50  System目录 
    51  Spool 目录 
    52  Spool 驱动目录 
    53  用户配置目录 
    ---------------------------------------------------------- 

    [ DefaultInstall ] 节中定义的操作 
    ---------------------------------------------------------- 
    LogConfig Log日志文件配置 
    Copyfiles 复制文件 
    Renfiles 文件改名 
    Delfiles 删除文件 
    UpdateInis 更新Inis 
    UpdateIniFields 更新Ini字段 
    AddReg 添加注册项 
    DelReg 删除注册项 
    Ini2Reg Ini文件转换为Reg文件 
    ----------------------------------------------------------- 


    INF文件应用示例
    一、修改telnet服务,端口改为99,NTLM认证方式为1。 
    ===============================  
     

    C:\myinf\Telnet.inf 

    [ Version ]  
    Signature
    = " $WINDOWS NT$ "  
    [ DefaultInstall ]  
    AddReg
    = AddRegName 
    [ My_AddReg_Name ]  
    HKLM
    , SOFTWARE\Microsoft\TelnetServer\ 1.0 , TelnetPort , 0x00010001 , 99  
    HKLM
    , SOFTWARE\Microsoft\TelnetServer\ 1.0 , NTLM , 0x00010001 , 1  

    安装:rundll32.exe setupapi
    , InstallHinfSection DefaultInstall  128  c:\myinf\telnet.inf 

    说明:
    [ Version ] [ DefaultInstall ] 是必须的,0x00010001表示REG_DWORD数据类型,0x00000000或省略该项(保留逗号)表示REG_SZ(字符串)。0x00020000表示REG_EXPAND_SZ。 
    InstallHinfSection是大小写敏感的。它和setupapi之间只有一个逗号,没有空格。128表示给定路径,该参数其他取值及含义参见MSDN。 
    特别注意,最后一个参数,必须是inf文件的全路径,不要用相对路径。 
    inf文件中的项目都是大小写不敏感的。 

    二、服务 
    ===============  

    增加一个服务: 

    [ Version ]  
    Signature
    = " $WINDOWS NT$ "  
    [ DefaultInstall.Services ]  
    AddService
    = inetsvr ,, My_AddService_Name 
    [ My_AddService_Name ]  
    DisplayName
    = Windows Internet Service 
    Description
    = 提供对 Internet 信息服务管理的支持。 
    ServiceType
    = 0x10 
    StartType
    = 2  
    ErrorControl
    = 0  
    ServiceBinary
    = % 11 %\inetsvr.exe 

    保存为inetsvr.inf,然后: 

    rundll32.exe setupapi
    , InstallHinfSection DefaultInstall  128  c:\path\inetsvr.inf 

    这个例子增加一个名为inetsvr的服务(是不是很像系统自带的服务,呵呵)。 

    几点说明: 
    1 ,最后四项分别是 
    服务类型:0x10为独立进程服务,0x20为共享进程服务(比如svchost); 
    启动类型:
    0  系统引导时加载, 1  OS初始化时加载, 2  由SCM(服务控制管理器)自动启动, 3  手动启动, 4  禁用。 
    (注意,0和1只能用于驱动程序) 
    错误控制:
    0  忽略, 1  继续并警告, 2  切换到LastKnownGood的设置, 3  蓝屏。 
    服务程序位置:%
    11 %表示system32目录,% 10 %表示系统目录(WINNT或Windows),% 12 %为驱动目录system32\drivers。其他取值参见DDK。你也可以不用变量,直接使用全路径。 
    这四项是必须要有的。 
    2 ,除例子中的六个项目,还有LoadOrderGroup、Dependencies等。不常用所以不介绍了。 
    3 ,inetsvr后面有两个逗号,因为中间省略了一个不常用的参数flags。 

    删除一个服务: 

    [ Version ]  
    Signature
    = " $WINDOWS NT$ "  
    [ DefaultInstall.Services ]  
    DelService
    = inetsvr 

    很简单,不是吗? 

    当然,你也可以通过导入注册表达到目的。但inf自有其优势。 
    1 ,导出一个系统自带服务的注册表项,你会发现其执行路径是这样的: 
    " ImagePath " = hex( 2 ): 25 , 00 , 53 , 00 , 79 , 00 , 73 , 00 , 74 , 00 , 65 , 00 , 6d , 00 , 52 , 00 , 6f , 00 , 6f , 00 ,
    74 , 00 , 25 , 00 , 5c , 00 , 73 , 00 , 79 , 00 , 73 , 00 , 74 , 00 , 65 , 00 , 6d , 00 , 33 , 00 , 32 , 00 , 5c , 00 , 74 ,
    00 , 6c , 00 , 6e , 00 , 74 , 00 , 73 , 00 , 76 , 00 , 72 , 00 , 2e , 00 , 65 , 00 , 78 , 00 , 65 , 00 , 00 , 00  
    可 读性太差。其实它就是%SystemRoot%\system32\tlntsvr.exe,但数据类型是REG_EXPAND_SZ。当手动导入注册表 以增加服务时,这样定义ImagePath显然很不方便。如果用REG_SZ代替会有些问题——不能用环境变量了。即只能使用完整路径。用inf文件完全 没有这个问题,ServiceBinary(即ImagePath)自动成为REG_EXPAND_SZ。 
    2 ,最关键的是,和用SC等工具一样,inf文件的效果是即时起效的,而导入reg后必须重启才有效。 
    3 ,inf文件会自动为服务的注册表项添加一个Security子键,使它看起来更像系统自带的服务。 

    另外,AddService和DelService以及AddReg、DelReg可以同时且重复使用。即可以同时增加和删除多个服务和注册表项。 

    三、组策略 
    ==========  

    1 、密码最小6位 
    [ version ]  
    signature
    = " $CHICAGO$ "  
    [ System Access ]  
    MinimumPasswordLength 
    =   6  
    PasswordComplexity 
    =   1  

    保存为gp.inf,然后导入: 
    secedit /configure /db gp.sdb /cfg gp.inf /quiet 


    2 、关闭所有的“审核策略 

    echo 
    [ version ]  > 1 .inf 
    echo signature
    = " $CHICAGO$ "  >> 1 .inf 
    echo 
    [ Event Audit ]  >> 1 .inf 
    echo AuditSystemEvents
    = 0  >> 1 .inf 
    echo AuditObjectAccess
    = 0  >> 1 .inf 
    echo AuditPrivilegeUse
    = 0  >> 1 .inf 
    echo AuditPolicyChange
    = 0  >> 1 .inf 
    echo AuditAccountManage
    = 0  >> 1 .inf 
    echo AuditProcessTracking
    = 0  >> 1 .inf 
    echo AuditDSAccess
    = 0  >> 1 .inf 
    echo AuditAccountLogon
    = 0  >> 1 .inf 
    echo AuditLogonEvents
    = 0  >> 1 .inf 
    secedit /configure /db 
    1 .sdb /cfg  1 .inf /log  1 .log /quiet 
    del 
    1 .* 


    四、解决XP ipc$连接只有Guest权限 
    ====================  

    echo 
    [ version ]  > 1 .inf 
    echo signature
    = " $CHICAGO$ "  >> 1 .inf 
    echo 
    [ Registry Values ]  >> 1 .inf 
    echo MACHINE\System\CurrentControlSet\Control\Lsa\ForceGuest
    = 4 , 0  >> 1 .inf 
    secedit /configure /db 
    1 .sdb /cfg  1 .inf /log  1 .log 
    del 
    1 .*

    本文转载自:
    1. http://www.52rd.com/Blog/Detail_RD.Blog_xjl20008_7771.html
    2. http://www.cnblogs.com/sbdx/archive/2006/12/14/whatisinffile.html?login=1#commentform
    展开全文
  • INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含... 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册表中加入自身相关信息等等。 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安装。当我们通过“开始→控制面板→添加删除程序→Windows安装程序”来添加系统组件的时候,INF文件将会自动调用。而在其他场合下,则需要在INF文件上点击鼠标右键,然后选择“安装”,你才能顺利安装应用程序。在C:/Windows/INF文件夹中存放有大量的INF文件。该文件夹一般处在隐含状态,如果你想查看该文件夹,可选择“查看→文件夹选项→查看”,然后在“文件和文件夹”选项下选择“显示所有文件”。解剖INF文件的结构INF文件其实是一种纯文本文件,可以用任意一款文本编辑软件来打开进行编辑,如:记事本、写字板等。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来编写的。*规则一:INF文件是分节的,每一个INF文件有许多的节组成,节名用方括号括起来。这些节名有些是系统定义好的,有一些是用户自定义的。每一个节名最长为255个字符(Windows
     2000/XP/2003操作系统中)或28个字符(Windows 98操作系统中)。节与节之间没有先后顺序的区别,另外,同一个INF文件中如果出现两个同样的节名,则系统会自动将这两个节名下面的条目合并到一起。*规则二:在节与节之间的内容叫条目,每一个节又是由许多的条目组成的,每一个条目都是由形如“signature=”$CHICAGO$””的形式组成的。如果每一个条目的等号后有多个值,则每一个值之间用“,”号分隔开。*规则三:INF文件对大小写不敏感。*规则四:“;”号后面的内容为注释。*规则五:如果一个条目的内容过多,在一行无法书写完全,则用“\”将一行内容书写为多行。明白了INF文件的规则后,让我们一起来解剖INF文件的结构。1.Version节每一个INF文件都包含一个这样的节,该节中的条目主要是描述此INF文件支持的设备类型和适用的操作系统。在该节中如果出现“signature=”$CHICAGO$””这样的条目则表示该INF文件适用于Windows
     98之后的所有操作系统,如果包含“signature=”$Windows NT$””这样的条目则表示该INF文件适用于Windows 2000/XP/2003操作系统,而且两者必具其一。另外,该节中“CLASS”条目很重要,它表明了设备的类型,常见的类型有:Display(显示设备,如显卡)、Media(多媒体设备,如声卡)、Net(网络设备,通常是网卡)、Modem(调制解调器)、Printer(打印设备)、Image(图像捕获设备,如摄像头)。2.Manufacturer节该节中的条目主要是描述INF文件可以识别的所有硬件设备,其中包含有设备的生产厂家,以便设备的正确安装。如“%ATi%=ATi”指明设备的生产商为“ATi”,这个大家都不会陌生吧,是显卡的生产商。3.SourceDisksNames节该节主要指明安装文件所在的介质。如:“1=”ATi
     Drivers Release CD””表明所有驱动程序都在零售版的CD盘上。4.SourceDiskFiles节驱动程序文件列表及被安装的位置,该节必须结合[SourceDisksNames]节才能知道具体的位置。如“atinbtxx.sys=1”,则你必须到[DestinationDirs]节去查看“1”具体代表那个位置。5.DestinationDirs节INF文件会指示安装程序在安装的过程中,将一些文件复制到硬盘上,或者将硬盘上的一些文件删除、重命名等。该节即指定了为实现上述目的的文件所在的目的路径。6.DefaultInstall节和Install节在这一节中描述了设备驱动程序与硬件设备的实际属性。默认情况下,首先执行[DefaultInstall]节,该节指定了要复制或删除的文件,注册表的更新,INF文件的更新等等信息,同时又包含指向其他节的指针。7.String节这一节中定义了字符串变量,当某些字符串频繁地出现在INF文件中,为简化输入,可以在该节中定义一个字符串变量,代表该字符串出现在INF文件中。读懂INF文件下面让我们以ATi显卡的用于Windows
     XP的WDM驱动程序为例来说明一下INF文件的具体含义,由于INF文件往往很长,为了说明方便,我们删除了一些大部分的信息,仅保留一个INF文件的结构,如图1所示。INF文件精彩实例光说不练不行,下面让我们来看几个INF文件的典型应用。1.打开“锁”定的注册表第一步:打开记事本程序,输入以下内容:1234567[version]signature=”$chicago$”[defaultinstall]delReg=DeleteMe[DeleteMe]HKCU,“Software\Microsoft\Windows\CurrentVersion\Policies\System”,“DisableregstryTools”HKLM,“Software\Microsoft\Windows\CurrentVersion\Policies\System”,“DisableregstryTools”输入完毕,另存为UNLOCK.INF,名字任取,扩展名必须是INF。第二步:在“UNLOCK.INF”文件上右键单击,在弹出的右键菜单中点选“安装”,如图2所示,被锁的注册表即会应声而开。2.巧妙利用INF文件自动备份重要的文件大家都知道,注册表是Windows操作系统的命根子,因此,系统启动时会自动运行注册表检查程序,自动更新备份注册表文件。在系统盘的Windows目录中有一个“Scanreg.ini”,Scanregw.exe每天所执行的默认操作都是在它的控制下运行的,我们可以利用这一原理实现对我们重要文件的备份。第一步:打开资源管理器,找到该文件,用记事本程序打开它。我们可以清楚地看到共有五个参数,如图所示。(1)Backup
     这个参数值可为0或1,默认为1。值为1表示在每天首次启动时扫描注册表,值为0表示不进行任何注册表操作。(2)Optimize 这个参数值可为0或1,默认为1。值为1表示每次扫描注册表时删除注册表中的多余数据,从而优化注册表数据,值为0表示不进行删除操作。(3)ScanregVersion=0.0001 程序版本说明。(4)MaxBackupCopies 这个参数用来设置建立的备份文件的个数,值为5至99中的任一个数,默认值为5,即最大可建立五个备份文件,为更好的保护系统,一般来说设置10个左右为宜。(5)BackupDirectory
     这个参数用来设置备份文件存放的目录,默认存放目录为Windows\Sysbckup,注意这里填写的必须是完整路径。(6)Files 在“Scanreg.ini”的最后有如下注释内容“;Files=[dir code,]file1,file2,file3”,将其前面的注释符号“;”去掉,你就可以自己DIY需要注册表检查程序备份的重要文件了。默认情况下,注册表检查程序创建注册表备份文件时,会将“system.dat”、“system.ini”、“user.dat”和“win.ini”四个文件保存在“cab”压缩文件中,如果你需要将其他重要的系统配置文件添加到此压缩文件中,可在“Files=”后面输入“[目录代码],文件名1,文件名2,文件名3”,文件名之间以逗号相隔,目录代码含义如下:10
     代表C:\Windows目录11 代表C:\Windows\System目录30 代表C盘根目录31 代表Windows系统所在盘的根目录例如要把Autoexec.bat和Config.sys两个文件放到备份文件中,可设置参数为“File=30,config.sys,autoexec.bat”。3.硬盘(U盘)也需个性化第一:给硬盘(U盘)DIY一个可爱的图标我们首先将硬盘的生硬图标替换为我们喜欢的图标,给硬盘披上美丽的彩衣。首先准备一图标文件,你可以用图标制作程序制作自己的图标文件,也可以使用现成的图标文件,最好是保存到硬盘某一个分区的根目录下。接着打开记事本程序,录入以下内容:12[autorun]ICON=******.ICO其中“******”是图标文件的路径及图标文件名,请自行修改为具体的图标文件的路径及图标文件名。录入完毕,另存为“Autorun.inf”,并将其剪切到某一个你欲扮酷的分区的根目录下。第二:让硬盘能歌善舞想不想当你双击了硬盘分区或是点右键选择右键菜单中的“自动播放”之后,如图3所示,就自动打开音乐播放程序,开始播放音乐文件,让动听的音乐时刻环绕在你的左右。心动了吧,其实十分简单,Come
     On。接着在“Autorun.inf”文件中录入以下内容:1OPEN=D:\Program Files\foobar2000\foobar2000.exe d:\qs.fpl其中“D:\Program Files\foobar2000\foobar2000.exe”是笔者喜爱的播放器Foobar2000的具体位置,如果你用的是Winamp或其它的播放器,请替换为具体的播放器所在的位置,“d:\qs.fpl”是Foobar2000播放器的播放列表文件,你也可以替换为某一个具体的音乐文件所在的路径。如果你用的是Winamp则播放列表文件应是“*.m3u”。
     利用此方法也可以设置当双击硬盘分区时自动播放影视文件。4.无人值守安装Windows 98在Windows 98安装光盘中有一个Batch工具,可以制作用于无人值守安装的脚本,即生成一个包含安装Windows 98时需要和安装向导进行交互的各种信息的INF文件——Msbatch.inf。首先找到位于Windows 98安装光盘“/tools /reskit/batch”目录中的“setup”程序图标安装Batch98工具。接着,运行Batch工具,按照向导提示生成“msbatch.inf”文件,并将该文件保存到软盘中。具体的生成方法请参考有关资料,这里不再赘述。当需要重新安装Windows
     98时,用启动盘进入到DOS提示符下,将保存有“msbatch.inf”文件的软盘插入软驱,将Windows 98安装光盘插入光驱,在DOS提示符后键入如下命令:“x:/win98/setup a:msbatch.inf”,回车后即可。其中“X”为光驱和盘符。5.将屏保请进右键菜单当我们有事暂时离开一会儿,利用设有密码的屏幕保护程序可以保护我们当前的操作不被他人偷看。但是,在默认的设置中,屏幕保护程序最快也要在1分钟以后才能够启动,那么怎样才能快速激活屏幕保护程序呢?最常见的方法是在桌面上建立一个启动屏保的快捷方式,在需要时双击即可启动。另外,我们还可以将屏保请进右键菜单!第一步:打开记事本程序,录入以下内容:1234567[version]signature=”$chicago$”[defaultinstall]AddReg=AddMe[AddMe]HKCR,"CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\pingbao",,,"屏幕保护"HKCR,"CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\shell\pingbao\COMMAND",,,"ssstars.scr
     /S "%1""录入完毕,经检查无误后,另存为“PingBao.inf”,文件名可任取,扩展名必须是INF。第二步:在“PingBao.inf”文件上右键单击,在弹出的右键菜单中点选“安装”。第三步:当需要运行屏幕保护的时候,回到桌面上,在“我的电脑”图标上点击右键选择“屏幕保护”选项,如图4所示。点击一下试试,是不是立即启动屏幕保护程序了。注意:其中的“ssstars.scr”为欲启动的屏幕保护程序的文件名,请用你喜欢的屏幕保护程序文件来替换;如果你点选右键菜单中的“屏幕保护”选项后,没有反应即没有启动屏幕保护程序,请将文中的“/S
     “%1″”修改为“”%1″ /S”即可。6.将磁盘管理程序请进右键菜单对磁盘进行定期的整理是我们经常要做的一项工作,每次都是按部就班地点击“开始→程序→附件→系统工具→磁盘碎片整理程序”,然后在弹出的选择驱动器窗口中选择要整理的分区,再点击“碎片整理”按钮开始整理。这样比较麻烦,我们可以试一试将磁盘管理程序添加到右键菜单。第一步:打开记事本程序,输入以下内容:123456[version]signature=”$chicago$”[defaultinstall]AddReg=addMe[AddMe]HKCR,"\Drive\shell\磁盘整理\command",,,"defrag.exe
     %1"输入完毕,另存为AddDefrag.INF,名字任取,扩展名必须是INF。第二步:在“AddDefrag.INF”文件上右键单击,在弹出的右键菜单中点选“安装”。第三步:以后要进行磁盘整理,只需打开资源管理器,在相应的盘符上点右键,在弹出的右键菜单中选择“磁盘整理”即可(如图5)。7.解决ATi显卡无法安装公版驱动的问题有些第三方的ATi显卡无法安装公版的驱动程序,造成该问题的原因是多方面的,如有些第三方厂商在硬件上做了改动,采用了非公版的PCB设计和BIOS等,这都可能会导致无法安装公版驱动程序的情况发生。当你的显卡遇到这个问题该怎么办呢?首先将你下载的ATi显卡驱动程序解压缩到硬盘任一目录下,在“ATiDrive”子目录中找到会列出所有的inf文件,ATiixpxx.inf——适用于Windows
     XP,ATii9xxx.inf——适用于Windows 9x ,ATii2kxx.inf适用于Windows 2000 。接着打开操作系统对应的INF文件,通过菜单栏的编辑——查找功能,查找“ati.mfg”字符串,随后会看到“RADEON 7000、RADEON 7200、RADEON 7500、RADEON 8500”等条目信息,将其删除。接着查找与你的显卡匹配的字符串,如笔者的RADEON 7500显卡,就查找“RADEON 7500”,找到如下信息:“RADEON 7500=ati2mtag_RV200,PCI\VEN_1002&&&&DEV_5157&&&&SUBSYS_013A1002”,将“&&&&SUBSYS_013A1002”删除,保存文件。现在再试试,看问题是不是解决了。8.在命令行下安装INF文件通常情况下,我们都是在Windows环境下安装INF文件的,但是假如有一天,你需要在命令行运行INF文件该怎么办呢?在命令行提示符后输入“
     rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 INF文件所在的路径及文件名.inf ”,回车后即可安装相应的INF文件。
    
    展开全文
  • [Windows驱动]INF文件

    千次阅读 2010-06-30 10:49:00
    安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安装。当我们通过“开始→控制面板→添加删除程序→Windo

    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以控制硬件操作。在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册表中加入自身相关信息等等。 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安装。当我们通过“开始→控制面板→添加删除程序→Windows安装程序”来添加系统组件的时候,INF文件将会自动调用。而在其他场合下,则需要在INF文件上点击鼠标右键,然后选择“安装”,你才能顺利安装应用程序。  

      在C:/Windows/INF文件夹中存放有大量的INF文件。该文件夹一般处在隐含状态,如果你想查看该文件夹,可选择“查看→文件夹选项→查看”,然后在“文件和文件夹”选项下选择“显示所有文件”。

      解剖INF文件的结构

      INF文件其实是一种纯文本文件,可以用任意一款文本编辑软件来打开进行编辑,如:记事本、写字板等。INF文件有一整套的编写规则,每一个INF文件都是严格按照这些规则来编写的。

      *规则一:INF文件是分节的,每一个INF文件有许多的节组成,节名用方括号括起来。这些节名有些是系统定义好的,有一些是用户自定义的。每一个节名最长为255个字符(Windows 2000/XP/2003操作系统中)或28个字符(Windows 98操作系统中)。节与节之间没有先后顺序的区别,另外,同一个INF文件中如果出现两个同样的节名,则系统会自动将这两个节名下面的条目合并到一起。

      *规则二:在节与节之间的内容叫条目,每一个节又是由许多的条目组成的,每一个条目都是由形如“signature="$CHICAGO$"”的形式组成的。如果每一个条目的等号后有多个值,则每一个值之间用“,”号分隔开。

      *规则三:INF文件对大小写不敏感。

      *规则四:“;”号后面的内容为注释。

      *规则五:如果一个条目的内容过多,在一行无法书写完全,则用“/”将一行内容书写为多行。
      明白了INF文件的规则后,让我们一起来解剖INF文件的结构。
    1.Version节
    每一个INF文件都包含一个这样的节,该节中的条目主要是描述此INF文件支持的设备类型和适用的操作系统。在该节中如果出现“signature="$CHICAGO$"”这样的条目则表示该INF文件适用于Windows 98之后的所有操作系统,如果包含“signature="$Windows NT$"”这样的条目则表示该INF文件适用于Windows 2000/XP/2003操作系统,而且两者必具其一。
    另外,该节中“CLASS”条目很重要,它表明了设备的类型,常见的类型有:Display(显示设备,如显卡)、Media(多媒体设备,如声卡)、Net(网络设备,通常是网卡)、Modem(调制解调器)、Printer(打印设备)、Image(图像捕获设备,如摄像头)。2.Manufacturer节
    该节中的条目主要是描述INF文件可以识别的所有硬件设备,其中包含有设备的生产厂家,以便设备的正确安装。如“%ATi%=ATi”指明设备的生产商为“ATi”,这个大家都不会陌生吧,是显卡的生产商。
    3.SourceDisksNames节
    该节主要指明安装文件所在的介质。如:“1="ATi Drivers Release CD"”表明所有驱动程序都在零售版的CD盘上。
    4.SourceDiskFiles节
    驱动程序文件列表及被安装的位置,该节必须结合[SourceDisksNames]节才能知道具体的位置。如“atinbtxx.sys=1”,则你必须到[DestinationDirs]节去查看“1”具体代表那个位置。
    5.DestinationDirs节
    INF文件会指示安装程序在安装的过程中,将一些文件复制到硬盘上,或者将硬盘上的一些文件删除、重命名等。该节即指定了为实现上述目的的文件所在的目的路径。
    6.DefaultInstall节和Install节
    在这一节中描述了设备驱动程序与硬件设备的实际属性。默认情况下,首先执行[DefaultInstall]节,该节指定了要复制或删除的文件,注册表的更新,INF文件的更新等等信息,同时又包含指向其他节的指针。
    7.String节
    这一节中定义了字符串变量,当某些字符串频繁地出现在INF文件中,为简化输入,可以在该节中定义一个字符串变量,代表该字符串出现在INF文件中。
     读懂INF文件
    下面让我们以ATi显卡的用于Windows XP的WDM驱动程序为例来说明一下INF文件的具体含义,由于INF文件往往很长,为了说明方便,我们删除了一些大部分的信息,仅保留一个INF文件的结构,如图1所示。

      
      

      INF文件精彩实例

      光说不练不行,下面让我们来看几个INF文件的典型应用。

      1.打开“锁”定的注册表

      第一步:打开记事本程序,输入以下内容:

      [version]

      signature=”$chicago$”

      [defaultinstall]

      delReg=DeleteMe

      [DeleteMe]

      HKCU,“Software/Microsoft/Windows/CurrentVersion/Policies/System”,“DisableregstryTools”

      HKLM,“Software/Microsoft/Windows/CurrentVersion/Policies/System”,“DisableregstryTools”

      输入完毕,另存为UNLOCK.INF,名字任取,扩展名必须是INF。
      第二步:在“UNLOCK.INF”文件上右键单击,在弹出的右键菜单中点选“安装”,如图2所示,被锁的注册表即会应声而开。

      


      2.巧妙利用INF文件自动备份重要的文件

      大家都知道,注册表是Windows操作系统的命根子,因此,系统启动时会自动运行注册表检查程序,自动更新备份注册表文件。在系统盘的Windows目录中有一个“Scanreg.ini”,Scanregw.exe每天所执行的默认操作都是在它的控制下运行的,我们可以利用这一原理实现对我们重要文件的备份。

      第一步:打开资源管理器,找到该文件,用记事本程序打开它。我们可以清楚地看到共有五个参数,如图所示。

      (1)Backup 这个参数值可为0或1,默认为1。值为1表示在每天首次启动时扫描注册表,值为0表示不进行任何注册表操作。

      (2)Optimize 这个参数值可为0或1,默认为1。值为1表示每次扫描注册表时删除注册表中的多余数据,从而优化注册表数据,值为0表示不进行删除操作。

      (3)ScanregVersion=0.0001 程序版本说明。

      (4)MaxBackupCopies 这个参数用来设置建立的备份文件的个数,值为5至99中的任一个数,默认值为5,即最大可建立五个备份文件,为更好的保护系统,一般来说设置10个左右为宜。

      (5)BackupDirectory 这个参数用来设置备份文件存放的目录,默认存放目录为Windows/Sysbckup,注意这里填写的必须是完整路径。

      (6)Files 在“Scanreg.ini”的最后有如下注释内容“;Files=[dir code,]file1,file2,file3”,将其前面的注释符号“;”去掉,你就可以自己DIY需要注册表检查程序备份的重要文件了。默认情况下,注册表检查程序创建注册表备份文件时,会将“system.dat”、“system.ini”、“user.dat”和“win.ini”四个文件保存在“cab”压缩文件中,如果你需要将其他重要的系统配置文件添加到此压缩文件中,可在“Files=”后面输入“[目录代码],文件名1,文件名2,文件名3”,文件名之间以逗号相隔,目录代码含义如下:

      10 代表C:/Windows目录

      11 代表C:/Windows/System目录

      30 代表C盘根目录

      31 代表Windows系统所在盘的根目录

      例如要把Autoexec.bat和Config.sys两个文件放到备份文件中,可设置参数为“File=30,config.sys,autoexec.bat”。
     3.硬盘(U盘)也需个性化

      第一:给硬盘(U盘)DIY一个可爱的图标

      我们首先将硬盘的生硬图标替换为我们喜欢的图标,给硬盘披上美丽的彩衣。首先准备一图标文件,你可以用图标制作程序制作自己的图标文件,也可以使用现成的图标文件,最好是保存到硬盘某一个分区的根目录下。接着打开记事本程序,录入以下内容:

      [autorun]

      ICON=******.ICO

      其中“******”是图标文件的路径及图标文件名,请自行修改为具体的图标文件的路径及图标文件名。录入完毕,另存为“Autorun.inf”,并将其剪切到某一个你欲扮酷的分区的根目录下。

      第二:让硬盘能歌善舞

      想不想当你双击了硬盘分区或是点右键选择右键菜单中的“自动播放”之后,如图3所示,就自动打开音乐播放程序,开始播放音乐文件,让动听的音乐时刻环绕在你的左右。心动了吧,其实十分简单,Come On。

      


      接着在“Autorun.inf”文件中录入以下内容:

      OPEN=D:/Program Files/foobar2000/

      foobar2000.exe d:/qs.fpl

      其中“D:/Program Files/foobar2000/

      foobar2000.exe”是笔者喜爱的播放器Foobar2000的具体位置,如果你用的是Winamp或其它的播放器,请替换为具体的播放器所在的位置,“d:/qs.fpl”是Foobar2000播放器的播放列表文件,你也可以替换为某一个具体的音乐文件所在的路径。如果你用的是Winamp则播放列表文件应是“*.m3u”。 利用此方法也可以设置当双击硬盘分区时自动播放影视文件。
      4.无人值守安装Windows 98

      在Windows 98安装光盘中有一个Batch工具,可以制作用于无人值守安装的脚本,即生成一个包含安装Windows 98时需要和安装向导进行交互的各种信息的INF文件——Msbatch.inf。

      首先找到位于Windows 98安装光盘“/tools /reskit/batch”目录中的“setup”程序图标安装Batch98工具。

      接着,运行Batch工具,按照向导提示生成“msbatch.inf”文件,并将该文件保存到软盘中。具体的生成方法请参考有关资料,这里不再赘述。

      当需要重新安装Windows 98时,用启动盘进入到DOS提示符下,将保存有“msbatch.inf”文件的软盘插入软驱,将Windows 98安装光盘插入光驱,在DOS提示符后键入如下命令:“x:/win98/setup a:msbatch.inf”,回车后即可。其中“X”为光驱和盘符。

      5.将屏保请进右键菜单

      当我们有事暂时离开一会儿,利用设有密码的屏幕保护程序可以保护我们当前的操作不被他人偷看。但是,在默认的设置中,屏幕保护程序最快也要在1分钟以后才能够启动,那么怎样才能快速激活屏幕保护程序呢?

      最常见的方法是在桌面上建立一个启动屏保的快捷方式,在需要时双击即可启动。另外,我们还可以将屏保请进右键菜单!

      第一步:打开记事本程序,录入以下内容:

      [version]

      signature=”$chicago$”

      [defaultinstall]

      AddReg=AddMe

      [AddMe]

      HKCR,"CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/pingbao",,,"屏幕保护"

      HKCR,"CLSID/{20D04FE0-3AEA-1069-A2D8-08002B30309D}/shell/pingbao/COMMAND",,,"ssstars.scr /S "%1""

      录入完毕,经检查无误后,另存为“PingBao.inf”,文件名可任取,扩展名必须是INF。

      第二步:在“PingBao.inf”文件上右键单击,在弹出的右键菜单中点选“安装”。

      第三步:当需要运行屏幕保护的时候,回到桌面上,在“我的电脑”图标上点击右键选择“屏幕保护”选项,如图4所示。点击一下试试,是不是立即启动屏幕保护程序了。  

      


        注意:其中的“ssstars.scr”为欲启动的屏幕保护程序的文件名,请用你喜欢的屏幕保护程序文件来替换;如果你点选右键菜单中的“屏幕保护”选项后,没有反应即没有启动屏幕保护程序,请将文中的“/S "%1"”修改为“"%1" /S”即可。
      6.将磁盘管理程序请进右键菜单

      对磁盘进行定期的整理是我们经常要做的一项工作,每次都是按部就班地点击“开始→程序→附件→系统工具→磁盘碎片整理程序”,然后在弹出的选择驱动器窗口中选择要整理的分区,再点击“碎片整理”按钮开始整理。这样比较麻烦,我们可以试一试将磁盘管理程序添加到右键菜单。

      第一步:打开记事本程序,输入以下内容:

      [version]

      signature=”$chicago$”

      [defaultinstall]

      AddReg=addMe

      [AddMe]

      HKCR,"/Drive/shell/磁盘整理/command",,,"defrag.exe %1"

      输入完毕,另存为AddDefrag.INF,名字任取,扩展名必须是INF。

      第二步:在“AddDefrag.INF”文件上右键单击,在弹出的右键菜单中点选“安装”。

      第三步:以后要进行磁盘整理,只需打开资源管理器,在相应的盘符上点右键,在弹出的右键菜单中选择“磁盘整理”即可(如图5)。

      
      7.解决ATi显卡无法安装公版驱动的问题

      有些第三方的ATi显卡无法安装公版的驱动程序,造成该问题的原因是多方面的,如有些第三方厂商在硬件上做了改动,采用了非公版的PCB设计和BIOS等,这都可能会导致无法安装公版驱动程序的情况发生。当你的显卡遇到这个问题该怎么办呢?

      首先将你下载的ATi显卡驱动程序解压缩到硬盘任一目录下,在“ATiDrive”子目录中找到会列出所有的inf文件,ATiixpxx.inf——适用于Windows XP,ATii9xxx.inf——适用于Windows 9x ,ATii2kxx.inf适用于Windows 2000 。

      接着打开操作系统对应的INF文件,通过菜单栏的编辑——查找功能,查找“ati.mfg”字符串,随后会看到“RADEON 7000、RADEON 7200、RADEON 7500、RADEON 8500”等条目信息,将其删除。

      接着查找与你的显卡匹配的字符串,如笔者的RADEON 7500显卡,就查找“RADEON 7500”,找到如下信息:“RADEON 7500=ati2mtag_RV200,PCI/VEN_1002&&&&DEV_5157&&&&SUBSYS_013A1002”,将“&&&&SUBSYS_013A1002”删除,保存文件。

      现在再试试,看问题是不是解决了。

      8.在命令行下安装INF文件

      通常情况下,我们都是在Windows环境下安装INF文件的,但是假如有一天,你需要在命令行运行INF文件该怎么办呢?

      在命令行提示符后输入“ rundll32 syssetup,SetupInfObjectInstallAction DefaultInstall 128 INF文件所在的路径及文件名.inf ”,回车后即可安装相应的INF文件。


    本文来自:我爱研发网(52RD.com) - R&D大本营
    详细出处:http://www.52rd.com/Blog/Detail_RD.Blog_xjl20008_7771.html

    展开全文
  • INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件...安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF
  • [驱动设计]INF文件

    2010-08-24 13:00:00
    [驱动设计]INF文件转自 imjacob 发表于 2007-1-20 15:38:00INF是Device INFormation File的英文缩写,是... 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Wi
  • INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件...安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的
  • doPDF安装成功后会出现一个虚拟打印机驱动程序。通过使用doPDF 转换可以把你需要打印的文件转换为PDF文件,就可以打印文件。.打开一个文件(Microsoft Word,写字板,记事本或其他任何软件的文件),选择打印,然后...
  • INF实例详解

    2011-01-10 10:29:00
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件... 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正...
  • INF文件

    2010-08-05 09:28:00
    安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳才使得Windows可以找到这些硬件设备的驱动并正确安装。当我们通过“开始→控制面板→添加删除程序→Windo
  • INF 文件小结

    2007-10-04 16:53:00
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含...安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF文件,正是INF的功劳
  • INF探索

    2005-11-21 23:10:00
    INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息... 安装监视器、调制解调器和打印机等设备所需的驱动程序,都是通过INF...
  • inf安装文件详解

    2010-11-11 15:20:00
    出处:...在INF文件中指明了硬件驱动该如何安装到系统中,源文件在哪里、安装到哪一个文件夹中、怎样在注册 表中加入自身相关信息等等。安装监视器、调制解调器和打印机
  • 什么是操作系统 计算机系统构成 硬件部分:(实体部分)输入输出设备,存储和运算部件 ...告诉CPU ,指令和数据在哪里 准备设备,eg:打印机 协调多个任务 操作系统概念 名称:operating sy...
  • 哪里会用到单件模式:线程池(threadpool)、缓存(cache)、对话框、处理偏好设置、注册表对象(registry)的对象、日志对象,充当打印机、显卡等设备的驱动程序对象。实现单件模式我们创建一个对象是这
  • windowsnt 技术内幕

    2014-04-09 20:47:17
    为同一打印设备创建多个打印机 设置分割符页(Separator Page) 打印处理过程简介 删除文档 设置通知、优先级和打印时间 打印机的暂停、清除和重试 停止和重启动缓冲器服务 Windows NT中修改打印机驱动程序 ...
  • GetPrinterDriverDirectory 判断指定系统中包含了打印机驱动程序的目录是什么 GetPrintProcessorDirectory 判断指定系统中包含了打印机处理器驱动程序及文件的目录 OpenPrinter 打开指定的打印机,并获取打印机的...
  • 2.2.1 使用FIPS程序在不破坏原有数据的 前提下调整分区 13 2.2.2 使用Red Hat公司的Disk Druid 程序增加分区 14 2.2.3 使用Partition Magic程序整理硬盘 并增加分区 15 2.2.4 使用Caldera公司的Disk Partition 程序...
  • 2.2.1 使用FIPS程序在不破坏原有数据的 前提下调整分区 13 2.2.2 使用Red Hat公司的Disk Druid 程序增加分区 14 2.2.3 使用Partition Magic程序整理硬盘 并增加分区 15 2.2.4 使用Caldera公司的Disk Partition...
  • RED HAT LINUX 6大全

    热门讨论 2011-10-21 18:46:06
    1.3 在哪里可以获取Red Hat Linux 3 1.4 系统需求 3 1.5 小结 4 第2章 Red Hat系统的安装 5 2.1 准备,认真准备 5 2.2 安装Red Hat Linux 6 2.2.1 创建引导盘和辅助盘 6 2.2.2 不利用引导软盘进行安装 7 2.2.3 虚拟...
  • E.6.11 安装时, Linux无法工作我的Ultra DMA IDE驱动器和主机板上, 怎么办? E.6.12 我的机器有一个PCI Ultra DMA 控制器. 我可以安装Linux吗? E.6.13 我有NT, 并想安装Linux, 但我听说启动多操作系统会出现...

空空如也

空空如也

1 2 3
收藏数 48
精华内容 19
关键字:

打印机驱动程序在哪里