INF Version Section详解

最近在学习设备驱动程序方面,了解到安装sys文件需要INF文件,边学习边做笔记
原文链接:http://msdn.microsoft.com/en-us/library/windows/hardware/ff547502(v=vs.85).aspx
[Version]
 
Signature="signature-name"
[Class=class-name]
[ClassGuid={nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn}]
[Provider=%INF-creator%]
[LayoutFile=filename.inf [,filename.inf]... ]  (Windows 2000 and Windows XP)
[CatalogFile=filename.cat]
[CatalogFile.nt=unique-filename.cat]
[CatalogFile.ntx86=unique-filename.cat]
[CatalogFile.ntia64=unique-filename.cat]  (Windows XP and later versions of Windows)
[CatalogFile.ntamd64=unique-filename.cat]  (Windows XP and later versions of Windows)
DriverVer=mm/dd/yyyy[,w.x.y.z]
[DontReflectOffline=1] (Windows Vista and later versions of Windows)
[PnpLockDown=0|1] (Windows Vista and later versions of Windows)
[DriverPackageDisplayName=%driver-package-description%]
[DriverPackageType=PackageType]

Signature="signature-name"
Signature值必须是"$Windows NT$" 或者 "$Chicago$",否则系统会认为这是个非法的INF文件。如果值是:"$Chicago$",
表示该INF文件适用 于Windows98之后得所有操作系统,如果该值为: " $Windows NT$", 表示该INF文件支持Windows NT
系列的操作系统。


Class=class-name

ClassGuid={nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn}

Class值和ClassGuid值是一组相对应的值。
class标记对应的设备类型,classguid标记该类对应的guid号。
系统已经定义了一组标准设备类型,如电池设备,蓝牙设备,CD-ROM设备,串口设备,端口驱动,磁盘驱动等等,系统已定义
的class和对应的classgui 值详见网页: http://msdn.microsoft.com/en-us/library/windows/hardware/ff553426(v=vs.
85).aspx 此外还可以利用INF文件为系统添加自定义Class和ClassGuid。 在系统注册表中的 HKEY_LOCAL_MACHINE\SYST
EM\ ControlSet001\Control\Class下可以 看到的系统定义的和自定义的所 有classguid值


Provider=%INF-creator%

Provider值标记INF文件的提供者。


LayoutFile=filename.inf [,filename.inf]...

指定一个或多个系统提供的包含layout信息的INF文件,一般这个值可以省略,在vista和之后得系统中该域已被淘汰。而其需要

的INF文件通常在  DDInstall sections中的Include和 Needs域上添加,或者在 SourceDisksNames  section 和  SourceDis
ksFiles   section。 LayoutFile域使用的两个理由:
1.作为安装的一部分,INF安装过程中必需要操作系统提供的某些inf文件。
2.在Include或Needs中引用的文件是不可安装的。


CatalogFile=filename.cat

指定一个在设备/驱动的发布过程需要包含的cat文件


CatalogFile.nt=unique-filename.cat |

CatalogFile.ntx86=unique-filename.cat |

CatalogFile.ntia64=unique-filename.cat |

CatalogFile.ntamd64=unique-filename.cat


DriverPackageDisplayName=%driver-package-description%

该值指定了驱动程序包的显示名。


DriverPackageType=PackageType

指定驱动程序包的类型。


PnpLockDown=0|1

指定即插即用是否阻止应用程序直接修改驱动程序包的INF中指定的文件。如果值是1,则阻止应用程序直接修改INF的 CopyFiles
中指定的文件。如果值是0或者没有指定PnpLockDown,则应用程序则有管理员权限去修改这些文件。驱动 文件用 这种方式防止
第三方恶意修改文件。 为了保证PnP驱动安装的完整性,程序不应该直接修改驱动程序包中INF文件复制的驱动文件,程序只有在
操作系统更新 PnP驱动后才去修改。 Vista和之后的windows,都将PnpLockdown置为1。防止应用程序直接修改驱动文件。


DriverVer=mm/dd/yyyy[,w.x.y.z]

指定驱动的版本信息。 mm/dd/yyyy标记日期,w.x.y.z标记版本号


DontReflectOffline=1

Vista和之后的系统版本才有该域的,第三方不用使用该域.



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值