Inf2Cat
Inf2Cat (Inf2Cat.exe) es una herramienta de línea de comandos que determina si el archivo INF de un paquete de controladores puede estar firmado digitalmente para una lista especificada de versiones de Windows. Si es así, Inf2Cat genera los archivos de catálogo sin firmar que se aplican a las versiones de Windows especificadas.
Inf2Cat /driver:
PackagePath
/os:
WindowsVersionList [/nocat] [/verbose] [/?] [other switches]
La herramienta Inf2Cat se encuentra en la carpeta Archivos de programa\Windows Kits\8.0\bin\x86 o Archivos de programa (x86)\Windows Kits\8.0\bin\x86 del WDK.
Solución de problemas
Si ve DriverVer set to a date in the future
al compilar el controlador, cambie la configuración del proyecto del paquete de controladores para que Inf2Cat establezca /uselocaltime
. Para ello, use Propiedades de configuración-Inf2Cat-General-Usar>>> hora local. Ahora Stampinf e Inf2Cat usan la hora local.
Si ve An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) Signability test failed.
, pruebe una de estas soluciones alternativas:
- Establezca la configuración
/nocat
de inf2cat del proyecto en y ejecute inf2cat manualmente. - Elimine
inf2cat.exe.manifest
de la\x86
carpeta del WDK activo para hacer que la herramienta se ejecute en Visual Studio.
Modificadores y argumentos
/driver:PackagePath
Especifica la ruta de acceso al directorio que contiene los archivos INF para los paquetes de controladores. Si el directorio especificado contiene archivos INF para varios paquetes de controladores, Inf2Cat creará archivos de catálogo para cada paquete de controladores.
Nota
Puede usar el modificador /drv: en lugar del modificador /driver: .
/nocat
Configura Inf2Cat para comprobar que el paquete de controladores cumple los requisitos de firma de las versiones de Windows especificadas, pero no para generar archivos de catálogo.
/os:WindowsVersionList
Configura Inf2Cat para comprobar que el archivo INF de un paquete de controladores cumple los requisitos de firma de las versiones de Windows especificadas por WindowsVersionList. WindowsVersionList es una lista separada por comas que incluye uno o varios de los siguientes identificadores de versión.
Versión de Windows | Identificador de la versión |
---|---|
Windows 11, versión 22H2 x64 Edition | 10_NI_X64 |
Windows 11, versión 22H2 Arm64 Edition | 10_NI_ARM64 |
Windows 11, versión 21H2 x64 Edition | 10_CO_X64 |
Windows 11, versión 21H2 Arm64 Edition | 10_CO_ARM64 |
Windows Server 2022 x64 Edition | ServerFE_X64 |
Windows Server 2022 Arm64 Edition | ServerFE_ARM64 |
Windows 10, versión 22H2, 21H2, 21H1, 20H2, 2004 x86 Edition | 10_VB_X86 |
Windows 10, versión 22H2, 21H2, 21H1, 20H2, 2004 x64 Edition | 10_VB_X64 |
Windows 10, versión 22H2, 21H2, 21H1, 20H2, 2004 Arm64 Edition | 10_VB_ARM64 |
Windows 10, versión 1909, 1903 x86 Edition | 10_19H1_X86 |
Windows 10, versión 1909, 1903 x64 Edition | 10_19H1_X64 |
Windows 10, versión 1909, 1903 Arm64 Edition | 10_19H1_ARM64 |
Windows 10, versión 1809 edición x86 | 10_RS5_X86 |
Windows 10, versión 1809 x64 Edition | 10_RS5_X64 |
Windows 10, versión 1809 Arm64 Edition | 10_RS5_ARM64 |
Windows Server 2019 x64 Edition | ServerRS5_X64 |
Windows Server 2019 Arm64 Edition | ServerRS5_ARM64 |
Windows 10, versión 1803 x86 Edition | 10_RS4_X86 |
Windows 10, versión 1803 x64 Edition | 10_RS4_X64 |
Windows 10, versión 1803 Arm64 Edition | 10_RS4_ARM64 |
Windows 10, versión 1709 x86 Edition | 10_RS3_X86 |
Windows 10, versión 1709 x64 Edition | 10_RS3_X64 |
Windows 10, versión 1709 Arm64 Edition | 10_RS3_ARM64 |
Windows 10, versión 1703 x86 Edition | 10_RS2_X86 |
Windows 10, versión 1703 x64 Edition | 10_RS2_X64 |
Windows 10, versión 1607 x86 Edition | 10_AU_X86 |
Windows 10, versión 1607 x64 Edition | 10_AU_X64 |
Windows Server 2016 x64 Edition | SERVER2016_X64 |
Windows 10 x86 Edition | 10_X86 |
Windows 10 x64 Edition | 10_X64 |
Windows Server 2016 | Server10_X64 |
Windows Server 2016 en Arm | Server10_ARM64 |
Nota
A partir de Windows Server 2008 R2, los sistemas operativos Windows Server ya no admitirán plataformas basadas en x86.
Inf2Cat omite el caso de los caracteres alfabéticos de las cadenas de identificador de versión. Por ejemplo, 10_NI_X64 y 10_ni_X64 son identificadores válidos para Windows 11, versión 22H2 x64 Edition.
/uselocaltime
Use la zona horaria local mientras se ejecutan las pruebas de comprobación de marca de tiempo del controlador. De forma predeterminada, se usa utc.
/verbose
Configura Inf2Cat para mostrar información detallada en una ventana de comandos.
/?
Configura Inf2Cat para mostrar información de ayuda en una ventana de comandos.
/Drm
Argumento de línea de comandos en desuso.
Agregue el atributo de firma drm en el archivo .inf para agregar el atributo de firma drm.
/Pe
Argumento de línea de comandos en desuso.
Agregue el atributo petrust signature en el archivo .inf para agregar el atributo de firma petrust.
/pageHashes
Incluir hashes de página con archivos. Opcionalmente, seguido de una lista de archivos.
Comentarios
La herramienta Inf2Cat comprueba los archivos INF del paquete de controladores en busca de errores estructurales y comprueba que un paquete de controladores se puede firmar digitalmente. Un paquete de controladores solo se puede firmar si todos los archivos a los que se hace referencia en un archivo INF están presentes y los archivos de origen están en la ubicación correcta. Si no se puede firmar un archivo INF o si contiene errores estructurales, es posible que el paquete de controladores no esté instalado correctamente o que muestre incorrectamente un cuadro de diálogo de advertencia de firma de controlador durante la instalación.
Inf2Cat genera un archivo de catálogo solo si el archivo de catálogo se especifica en el archivo INF del paquete de controladores y el archivo de catálogo se aplica a una o varias de las versiones de Windows especificadas. Si la sección Versión inf de un archivo INF solo proporciona una directiva CatalogFile=filename.cat , ese archivo de catálogo se aplica a todo el paquete de controladores. Para admitir instalaciones multiplataforma, el archivo INF debe incluir CatalogFile. PlatformExtension=unique-filename.cat directivas.
Para obtener más información sobre cómo firmar un paquete de controladores, vea Firma de controladores.
Para usar Inf2Cat, debe ser miembro del grupo Administradores del sistema.
Ejemplos
En el ejemplo siguiente, c:\MyDriver contiene un paquete de controladores cuyo archivo INF es MyInfFile.inf y la sección Versión inf del archivo INF incluye solo la siguiente directiva CatalogFile :
[Version]
. . .
CatalogFile=MyCatalogFile.cat
. . .
En este ejemplo, el siguiente comando Inf2Cat comprobaría si el paquete de controladores se puede firmar para Windows 10, versión 21H2, 21H1, 20H2, 2004 x64 Edition y para Windows 11, versión 21H2 x64 Edition. Si el paquete se puede firmar para estas versiones, Inf2Cat creará el archivo de catálogo sin firmar MyCatalogFile.cat.
Inf2Cat /driver:C:\MyDriver /os:10_VB_X64,10_CO_X64
En el ejemplo siguiente, c:\MyDriver contiene un paquete de controladores cuyo archivo INF es MyInfFile.inf y la sección Versión inf del archivo INF incluye solo las dos directivas CatalogFile siguientes con extensiones de plataforma:
[Version]
. . .
CatalogFile.ntx86=MyCatalogFileX86.cat
CatalogFile.ntamd64=MyCatalogFileX64.cat
. . .
En este ejemplo, el siguiente comando Inf2Cat comprobaría si el paquete de controladores se puede firmar para Windows 10, versión 1809 x86 Edition y X64 Edition. Además, comprueba si windows Windows 10, versión 1909, 1903 x86 Edition y X64 Edition. Si el paquete se puede firmar para todas estas versiones, Inf2Cat creará los archivos de catálogo sin firmar MyCatalogFileX86.cat y MyCatalogFileX64.cat.
Inf2Cat /driver:C:\MyDriver /os:10_RS5_X86,10_RS5_X64,10_19H1_X86,10_19H1_X64
Para obtener más información sobre cómo usar Inf2Cat para crear un archivo de catálogo, vea Creating a Catalog File for a PnP Driver Package.