之前对INF文件有种不知道从哪下手的感觉,每个段落的意思大概都明白,但是合起来就不是那么容易理解,写了一个INF文件,折腾了下,可以用了,分享下。
先说下调试吧。这里介绍下C:/Windows/Setupapi.log,它记录了当使用INF文件安装驱动时系统做的一些动作,比如实际上它用了哪些段落来安装,当安装失败时也会记录下来。我碰到的两个错误:1,INF找不到所需的段落,查看了下Setupapi.log,原来在系统安装时需要ClassInstall32这个段落,而我只提供了ClassInstall,加上这个段落,然后复制ClassInstall下面的内容就可以了;2,这个INF中的服务安装段落无效,这个我又重新看了《给大脑不大的熊的inf文件》,里面提到Manufacturer这段,后面应该接安装模块名,之后安装端的名字均要带上模块名,例如
[Manufacturer]
%MfgName% = OurModel
[OurModel.NT]
Include = ks.inf
CopyFile = OurCopyFiles
AddService = OurSys,2,DriverInstall
当然我这里介绍的是驱动INF文件,《inf文件》要多看几遍,第一遍也只是看了个大概。后来出了问题,回头再看,收获很大,可是说是豁然开朗。