Inf2Cat


Inf2Cat (Inf2Cat.exe) 是一个命令行工具,该工具确定驱动程序包的 INF 文件是否可以针 ​​​对指定的 Windows 版本列表进行数字签名​​​。如果可以,那么 Inf2Cat 会生成适用于指定 Windows 版本的未签名的目录文件。

Inf2Cat /driver:PackagePath /os:WindowsVersionList [/nocat] [/verbose] [/?] [other switches]


开关和参数

/driver:PackagePath


指定包含驱动程序包的 INF 文件的目录路径。如果指定的目录包含多个驱动程序包的 INF 文件,那么 Inf2Cat 会为每个驱动程序包创建目录文件。


注意  可以使用 /drv: 开关来代替 /driver: 开关。




/nocat


将 Inf2Cat 配置为验证驱动程序包是否符合指定的 Windows 版本的签名要求,而不生成目录文件。




/os:WindowsVersionList


将 Inf2Cat 配置为验证驱动程序包的 INF 文件是否符合由 WindowsVersionList 指定的 Windows 版本的签名要求。WindowsVersionList 是一个逗号分隔列表,其中包含以下一个或多个版




本标识符。




Windows 版本

版本标识符


Windows 8 x64版本

8_X64


Windows 8 x86版本

8_X86


Windows Server 2012

Server8_X64


Windows Server 2008 R2 x64版本

Server2008R2_X64


Windows Server 2008 R2 Itanium版本

Server2008R2_IA64


Windows 7 x64版本

7_X64


Windows 7 x86版本

7_X86


Windows Server 2008 x64版本

Server2008_X64


Windows Server 2008 Itanium版本

Server2008_IA64


Windows Server 2008 x86版本

Server2008_X86


Windows Vista x64版本

Vista_X64


Windows Vista x86版本

Vista_X86


Windows Server 2003 x64版本

Server2003_X64


Windows Server 2003 Itanium版本

Server2003_IA64


Windows Server 2003 x86版本

Server2003_X86


Windows XP x64版本

XP_X64


Windows XP x86版本

XP_X86


Windows 2000

2000



Inf2Cat 忽略版本标识符字符串的字母字符的大小写。例如,vista_x64 和 Vista_X64 对于 Windows Vista x64 版本来说都是有效的标识符。



/verbose


将 Inf2Cat 配置为在命令窗口中显示详细信息。



/?


将 Inf2Cat 配置为在命令窗口中显示帮助信息。



备注


Inf2Cat 工具替换 Windows Vista 之前的 WDK 版本中包含的 Signability 工具。


若要使用 Inf2Cat,你必须是系统上 Administrators 组的成员。



Inf2Cat 工具检查驱动程序包的 INF 文件,了解是否存在结构错误,并且是否可以对验证驱动程序包进行数字签名。仅当 INF 文件中引用的所有文件都存在且源文件位于正确的位置时,才能对驱动程序包进行签名。如果无法对某个 INF 文件进行签名或者该文件包含结构错误,那么驱动程序包可能无法正确安装,或者在安装期间可能无法正确显示驱动程序签名警告对话框。仅当在驱动程序包的 INF 文件中指定目录文件时,Inf2Cat 才生成目录文件,并且该目录文件应用于一个或多个指定的 Windows 版本。如果 INF 文件的 INF Version section 仅提供 


CatalogFile=filename.cat 指令,

则该目录文件应用于整个驱动程序包。若要支持跨平台安装,INF 文件应该包含CatalogFile.PlatformExtension=unique-filename.cat 指令。有关签署驱动程序包的详细信息,请参阅驱动程序签名和设备和驱动程序安装基本主题。



Inf2Cat 工具位于 WDK 的 Program Files\Windows Kits\8.0\bin\x86 或 Program Files (x86)\Windows Kits\8.0\bin\x86 文件夹中。




示例


在以下示例中,c:\MyDriver 包含一个驱动程序包,该程序包的 INF 文件为 MyInfFile.inf 并且 INF 文件中的 INF 版本部分仅包含以下 CatalogFile 指令:



[Version]


. . .


CatalogFile=MyCatalogFile.cat


. . .



对于该示例,以下 Inf2Cat 命令将验证是否可以针对 Windows 2000 和 x86 版本的 Windows Vista、Windows Server 2003 和 Windows XP 对驱动程序包进行签名。如果可以针对这些版本对程序包进行签名,那么 Inf2Cat 将创建未签名的目录文件 MyCatalogFile.cat。


Inf2Cat /driver:C:\MyDriver /os:2000,XP_X86,Server2003_X86,Vista_X86




在以下示例中,c:\MyDriver 包含一个驱动程序包,该程序包的 INF 文件为 MyInfFile.inf,并且 INF 文件中的 INF Version 部分仅包含以下两个具有平台扩展的CatalogFile 指令:


[Version]


. . .


CatalogFile.ntx86=MyCatalogFileX86.cat


CatalogFile.ntamd64=MyCatalogFileX64.cat


. . .



对于该示例,以下 Inf2Cat 命令将验证是否可以针对 Windows 2000 和 x86 版本的 Windows Vista、Windows Server 2003 和 Windows XP 对驱动程序包进行签名。此外,该命令还将验证是否可以针对 x64 版本的 Windows Vista、Windows Server 2003 和 Windows XP 对驱动程序包进行签名。如果可以针对所有这些版本对程序包进行签名,那么 Inf2Cat 将创建未签名的目录文件 MyCatalogFileX86.cat 和 MyCatalogFileX64.cat。




Inf2Cat /driver:C:\MyDriver /os:2000,XP_X86,XP_X64,Server2003_X86,Server2003_X64,Vista_X86,Vista_X64


有关如何使用 Inf2Cat 创建目录文件的详细信息,请参阅为

​ PnP 驱动程序包创建目录文件​