在工控机安装xp操作系统时,由于工控机的集成显卡驱动只支持win7,之前没接触过windows驱动相关内容,折腾了半天。下载的驱动是exe的,双击安装就提示安装失败(未签名)

  上图是网上随便找的,现象是一样的。最后解决办法是运行exe安装文件后,在temp目录下找的它解压后的文件,然后在设备驱动选择手动指定安装目录,指定为这个目录进行强制安装。最后安装成功。

  网上搜了下windows设备驱动inf文件介绍,对windows设备驱动有个初步了解。

  相信朋友们对驱动程序的作用和安装应该不会陌生,但INF文件与驱动程序究竟有何关系呢?其实,INF是Device Information File(设备信息文件)的简称,设备管理器通过读取相应的INF文件来安装驱动程序,其中记录了驱动程序安装的所有操作,包括复制文件到指定路径、添加或修改注册表、加载系统服务等,而实际的驱动程序则存放在sys、dll、vxd等文件中。

  INF文件的构成

  在C:Windows下有一个名为INF的隐藏文件夹,我们可以找到很多??.INF、??.pnf格式的文件,前者即所谓的设备信息文件,后者是预编译信息文件。用记事本可以打开INF文件,其中记录了必要的硬件安装信息,包括设备类型、设备生产厂商名称、适用产品等信息,Windows可以据此自动安装驱动程序。如图1所示,这是CPU的INF文件,笔者以此为例介绍主要构成部分:

  1. [version]:版本信息

  Signature="WINDOWS NT":这表示驱动程序适用于Windows 2000/XP操作系统,如果是Windows 9x/Me则应该是“CHICAGO”。

  Class:设备类型,这里的“Processor”表示中央处理器,即我们通常所说的CPU。如果是显卡设备的INF文件,这里会显示为“Display”,光驱设备是“CD-ROM”,显示器是“Monitor”,声卡等多媒体设备是“Media”,网卡是“Net”,打印机是“Print”,摄像头是“Image”。

  DriverVer:设备驱动程序的版本和发布日期

  2. [Manufacturer]:生产厂商信息

  3. [DestinationDirs]:驱动程序安装路径

  DefaultDestDir = 12:这里的“12”表示将驱动程序文件安装到Windows文件夹下,如果是“11”则表示将驱动程序文件安装到C:WindowsSystem32文件夹下。

  4. [Processor_Calss_Addreg]:向注册表中添加的键值

  安装INF文件

  通常情况下,硬件厂商已经将驱动程序打包为一个安装程序或自解压程序,我们只需直接执行Setup.exe或??.exe即可,不过笔者建议还是安装INF文件为好,这样不会同时安装一些无用的垃圾文件。

  第一步:解压缩驱动程序

  如果下载回来的驱动程序是一个ZIP格式的压缩包,首先将其解压缩;如果下载回来的驱动程序是一个EXE格式的自解压文件,请使用WinRAR或WinZIP释放到一个临时文件夹中,然后查找到其中的INF文件。

  第二步:安装INF

  在“我的电脑”或“资源管理器”中右击刚才找到的INF文件,执行“安装”命令就可以了。这是因为微软在Windows中提供了Setup API,驱动程序开发人员不需要考虑接口、安装等事情。

  INF高级应用实例

  利用INF文件,我们可以完成很多意想不到的操作,这里通过几个实例进行说明:

  实例一:完全删除驱动程序

  很多情况下,当我们将不需要的硬件设备从系统拔出或取消连接后,其驱动程序并未从系统中真正删除,系统中仍然保留了这些设备的驱动程序文件和信息,时间一长,不仅会导致系统越来越庞大,而且这些顽固的驱动程序可能会影响新设备的安装,因为Windows会自动记忆曾安装过驱动程序的设备的INF文件信息,当我们再次安装同类型硬件时,系统会自作聪明的自动安装旧硬件的驱动程序,而拒绝接受新的驱动程序。

  例如笔者所使用的笔记本电脑,虽然提供了IEEE 1394接口,但由于平时并不使用相应设备,于是打算将其从系统中彻底卸载。首先从“控制面板”打开“设备管理器”窗口,在“IEEE 1394总线主控制器”下选择“Texas Instruments OHCI Compliant IEEE 1394 Host Controller设备”,右击后切换到“驱动程序文件详细信息”窗口,如图2所示,这里清楚地列出了该设备所对应的全部驱动程序文件的详细路径,请记录下来一一删除即可。对于未能正确显示驱动程序文件信息的设备,我们可以用记事本打开相应的INF文件,在[SourceDisksFiles]小节查找所有的??.dll、??.vxd、??.drv、??.exe、??.ini等类型的文件名,记录下来后手动删除。

接下来,我们还需要进入C:WindowsINF文件夹,这里找到了1394.INF、1394vdbg.INF两个文件,将其全部删除就可以了。

  实例二:未通过WHQL认证的设备驱动程序的INF文件

  对于未通过微软WHQL认证(微软数字签名认证)的设备驱动程序,安装后你可能无法找到其对应的INF文件,它们的位置在哪里呢?

  原来,Windows对于那些未通过WHQL认证的设备驱动程序,安装时并未直接将相应的INF文件复制到C:WindowsINF文件夹中,而是进行了重新命名,以便系统识别和管理,当然这些文件的位置并未改变。它们的文件名以oem*开头,这里的“*”代表具体的数字,从0开始,其内容构成与普通的INF文件没有什么区别。

  实例三:让Windows 98自动安装驱动程序

  由于诸多原因,现在仍有部分朋友在使用Windows 98,由于发布较早,Windows 98对新硬件的识别不是很好,例如对目前热门的USB闪存盘就无法做到即插即用,而且插入的网卡通常也需要安装驱动程序,否则将无法正常使用。

  在Windows 98安装光盘的ToolsreskitINFinst文件夹中提供了一个名为INFinst.exe的硬件信息安装程序文件,我们可以利用这个程序将相应设备的驱动程序手动集成至Windows 98的安装文件,以后在安装操作系统时,安装程序会自动检测所有已连接的硬件设备,并自动安装相应的驱动程序。

  实例四:让Windows认识改造硬件

  Analog Device公司为板载声卡提供了配套的SoundMAX驱动程序,通过安装在主板上的Codec与预告加载的音频渲染软件结合在一起,提供了广受欢迎的Yamaha DLSbyXG音色库和Sensaura 5.1 Virtual Theater环绕声,并且支持所有主流游戏音频技术,可惜的是只支持AD188x、AD189x、AD198x等有限的芯片。如果你的板载声卡使用了其他公司的芯片,在安装时将无法继续。

  不过,通过某些技术手段,我们可以让非AD1985芯片的板载声卡安装SoundMAX驱动程序,这自然又要用到INF文件了。首先,从http://www.mydrivers.com/dir105/d42111.htm下载5.12.5243 WDM版本的SoundMAX驱动程序,下载时请注意对应相应的操作系统版本,将下载回来的文件解压缩,在“SMAXWDMW2K_XP”文件夹有三个INF文件,其中smwdmCH4.inf文件对应的是Intel系列的ICH4芯片,smwdmCH6.INF对应的是Intel系列的IC6芯片,由于笔者使用的是VIA系列的芯片组,因此这里选择了smwdmCH5.inf,用记事本打开后定位到[AnalogDevices]小节的最后一行,按照固定的格式将板载声卡的ID号添加过来。

  板载声卡的ID号,可以在“DirectX诊断工具→声音”窗口中查看到,例如“PCIVEN_1106DEV_3058SUBSYS_001214C0REV”,添加时请注意使用相同的格式,另外必须将两个“&&”符号补充在相应的位置,以保证足够的字符个数,否则安装时仍然会无法通过。接下来,我们就可以顺利安装SoundMAX驱动程序了。

转自http://diybbs.zol.com.cn/12/86_118938.html

【转】从INF文件认识驱动的更多相关文章

  1. Windows驱动 INF文件

    参考一:百度百科 参考二:INF文件的节 参考三:wikipedia 参考四:MSDN: INF File INF文件的节 INF文件是一个文本文件,由许多按层次结构排列的节组成,他们以方括号中的节名 ...

  2. INF文件

    百度百科:http://baike.baidu.com/view/637107.htm?fr=ala0_1_1 INF简介 INF是Device INFormation File的英文缩写,是Micr ...

  3. windows driver inf文件

    原来修改了inf文件会导致签名过的驱动包哈希值不正确了啊.现在才知道. = = http://www.chiphell.com/thread-827956-1-1.html

  4. INF 右键安装驱动以及卸载

    INF 右键安装驱动以及卸载 之前写过一篇文章是关于INF文件详解的,大家可以参看INF文件详解,这次写的是关于INF右键安装,这样比较方便.卸载的话也是一句话,可以大大减少安装时间: 先将INF文件 ...

  5. Autorun.inf文件(2):改变硬盘分区图标

    改变F盘图标. 原理:在f盘下新建一个Autorun.inf文件,文件内容是 [AutoRun]icon=favicon.ico准备名为favicon.ico图标文件,将其放在工程目录里,设计程序将它 ...

  6. 关于Autorun.inf文件

    配置Autorun.inf文件可以使双击磁盘时,自动运行某一应用程序.但是现在只支持CD或者DVD媒体了(以前硬盘也可以) 关于Autorun.inf的组成部分可以参考https://msdn.mic ...

  7. ATL开发 ActiveX控件的 inf文件模板

    ATL开发 ActiveX控件的 inf文件模板    

  8. Inno setup 安装*.inf文件_示例

    nno setup 调用*.Inf文件的条目区段名称_示例 首先自己编写一个INF文件来供 Inno setup 进行测试: ;复制以下代码到记事本然后另存为123.inf .然后把123.inf文件 ...

  9. 文件过滤驱动实现目录重定向(一)good

    文件过滤驱动拦截的IRP主要包括以下几个:IRP_MJ_CREATE,文件创建操作,文件的任何操作,都是从这里开始的.IRP_MJ_CLEANUP,文件的HANDLE句柄全部关闭会触发这个消息IRP_ ...

随机推荐

  1. HDU4276 The Ghost Blows Light SPFA&&树dp

    题目的介绍以及思路完全参考了下面的博客:http://blog.csdn.net/acm_cxlove/article/details/7964739 做这道题主要是为了加强自己对SPFA的代码的训练 ...

  2. Winform基础 -- 菜单

    快速创建默认菜单 使用控件 MenuStrip : 点击菜单的右上方小三角:选择 [插入标准项] 即可显现出标准的菜单格式: 如果想添加更多的菜单项,可以在   [请在此处键入] 处输入菜单项的名称 ...

  3. http://www.cnblogs.com/huangcong/archive/2010/06/14/1757957.html

    http://www.cnblogs.com/huangcong/archive/2010/06/14/1757957.html http://www.cnblogs.com/langtianya/a ...

  4. lintcode 中等题:Divide Two Integers 两个数的除法

    题目 两个整数相除 将两个整数相除,要求不使用乘法.除法和 mod 运算符. 如果溢出,返回 2147483647 . 样例 给定被除数 = 100 ,除数 = 9,返回 11 解题  15%的通过率 ...

  5. java io知识点汇总FIle类

    1.路径分隔符问题: 因为java有跨平台行,而在windows和linux中的目录分隔符是不同的.windows是"\" 而linux是"/"  所以必须想办 ...

  6. Android:查看应用创建的数据库

    每个Android应用程序都可以使用SQLite数据库.它创建的位置在data/data/<项目文件夹>/databases/ 运行后打开,window->show view-> ...

  7. 特殊的css样式

    在一定范围大小变化的div .div { width:auto; height:auto; min-height:100px; min-width:100px; max-height:200px; m ...

  8. linux kernel启动流程

    linux kernel启动是从./init/main.c中开始的,其大概流程是: 1. 调用start_kernel()函数: 2. start_kernel()调用rest_init()函数: 3 ...

  9. Builder创建者模式

    http://www.codeproject.com/Articles/42415/Builder-Design-Pattern In Elizabeth's day care center, the ...

  10. MySQL中REGEXP正则表达式使用大全

    REGEXP在mysql是用来执行正则表达式的一个函数 像php中的preg之类的函数了,regexp正则函数如果只是简单的查询使用like即可,但复杂的还是需要使用regexp了,下面我们来看看. ...