Inf2Cat
O Inf2Cat (Inf2Cat.exe) é uma ferramenta de linha de comando que determina se o arquivo INF de um pacote de driver pode ser assinado digitalmente para uma lista especificada de versões do Windows. Nesse caso, o Inf2Cat gera os arquivos de catálogo não assinados que se aplicam às versões especificadas do Windows.
Inf2Cat /driver:
PackagePath
/os:
WindowsVersionList [/nocat] [/verbose] [/?] [other switches]
A ferramenta Inf2Cat está localizada na pasta Arquivos de Programas\Windows Kits\8.0\bin\x86 ou Arquivos de Programas (x86)\Windows Kits\8.0\bin\x86 do WDK.
Solução de problemas
Se você vir DriverVer set to a date in the future
ao criar o driver, altere as configurações do projeto do pacote de driver para que o Inf2Cat defina /uselocaltime
. Para fazer isso, use Propriedades de Configuração-Inf2Cat-General-Use>>> Local Time. Agora , Tanto Stampinf quanto Inf2Cat usam a hora local.
Se você vir An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) Signability test failed.
, tente uma destas soluções alternativas:
- Defina as configurações
/nocat
inf2cat do projeto como e execute o inf2cat manualmente. - Exclua
inf2cat.exe.manifest
da\x86
pasta do WDK ativo para fazer com que a ferramenta seja executada no Visual Studio.
Opções e argumentos
/driver:PackagePath
Especifica o caminho para o diretório que contém os arquivos INF para pacotes de driver. Se o diretório especificado contiver arquivos INF para vários pacotes de driver, o Inf2Cat criará arquivos de catálogo para cada pacote de driver.
Observação
Você pode usar a opção /drv: no lugar da opção /driver: .
/nocat
Configura o Inf2Cat para verificar se o pacote de driver está em conformidade com os requisitos de assinatura para as versões especificadas do Windows, mas não para gerar arquivos de catálogo.
/os:WindowsVersionList
Configura o Inf2Cat para verificar se o arquivo INF de um pacote de driver está em conformidade com os requisitos de assinatura para as versões do Windows especificadas pelo WindowsVersionList. WindowsVersionList é uma lista separada por vírgulas que inclui um ou mais dos identificadores de versão a seguir.
Versão do Windows | Identificador de versão |
---|---|
Windows 11, versão 22H2 x64 Edition | 10_NI_X64 |
Windows 11, versão 22H2 Arm64 Edition | 10_NI_ARM64 |
Windows 11, versão 21H2 x64 Edition | 10_CO_X64 |
Windows 11, versão 21H2 Arm64 Edition | 10_CO_ARM64 |
Windows Server 2022 x64 Edition | ServerFE_X64 |
Windows Server 2022 Arm64 Edition | ServerFE_ARM64 |
Windows 10, versão 22H2, 21H2, 21H1, 20H2, 2004 x86 Edition | 10_VB_X86 |
Windows 10, versão 22H2, 21H2, 21H1, 20H2, 2004 x64 Edition | 10_VB_X64 |
Windows 10, versão 22H2, 21H2, 21H1, 20H2, 2004 Arm64 Edition | 10_VB_ARM64 |
Windows 10, versão 1909, 1903 x86 Edition | 10_19H1_X86 |
Windows 10, versão 1909, 1903 x64 Edition | 10_19H1_X64 |
Windows 10, versão 1909, 1903 Arm64 Edition | 10_19H1_ARM64 |
edição Windows 10, versão 1809 x86 | 10_RS5_X86 |
edição Windows 10, versão 1809 x64 | 10_RS5_X64 |
Windows 10, versão 1809 Arm64 Edition | 10_RS5_ARM64 |
Windows Server 2019 x64 Edition | ServerRS5_X64 |
Windows Server 2019 Arm64 Edition | ServerRS5_ARM64 |
Windows 10, versão 1803 x86 Edition | 10_RS4_X86 |
Windows 10, versão 1803 x64 Edition | 10_RS4_X64 |
Windows 10, versão 1803 Arm64 Edition | 10_RS4_ARM64 |
Windows 10, versão 1709 x86 Edition | 10_RS3_X86 |
Windows 10, versão 1709 x64 Edition | 10_RS3_X64 |
Windows 10, versão 1709 Arm64 Edition | 10_RS3_ARM64 |
Windows 10, versão 1703 x86 Edition | 10_RS2_X86 |
Windows 10, versão 1703 x64 Edition | 10_RS2_X64 |
Windows 10, versão 1607 x86 Edition | 10_AU_X86 |
Windows 10, versão 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 no Arm | Server10_ARM64 |
Observação
A partir do Windows Server 2008 R2, os sistemas operacionais windows server não darão mais suporte a plataformas baseadas em x86.
O Inf2Cat ignora o caso dos caracteres alfabéticos das cadeias de caracteres do identificador de versão. Por exemplo, 10_NI_X64 e 10_ni_X64 são identificadores válidos para Windows 11, versão 22H2 x64 Edition.
/uselocaltime
Use o fuso horário local durante a execução de testes de verificação de carimbo de data/hora do driver. Por padrão, o UTC é usado.
/verbose
Configura o Inf2Cat para exibir informações detalhadas em uma janela de comando.
/?
Configura o Inf2Cat para exibir informações de ajuda em uma janela de comando.
/Drm
Argumento de linha de comando preterido.
Adicione o atributo de assinatura drm no arquivo .inf para adicionar o atributo de assinatura drm.
/Pe
Argumento de linha de comando preterido.
Adicione o atributo de assinatura petrust no arquivo .inf para adicionar o atributo de assinatura petrust.
/pageHashes
Inclua hashes de página com arquivos. Opcionalmente seguido por uma lista de arquivos.
Comentários
A ferramenta Inf2Cat verifica se há erros estruturais nos arquivos INF do pacote de driver e verifica se um pacote de driver pode ser assinado digitalmente. Um pacote de driver só poderá ser assinado se todos os arquivos referenciados em um arquivo INF estiverem presentes e os arquivos de origem estiverem no local correto. Se um arquivo INF não puder ser assinado ou se contiver erros estruturais, o pacote de driver poderá não ser instalado corretamente ou exibir incorretamente uma caixa de diálogo de aviso de assinatura de driver durante a instalação.
O Inf2Cat gerará um arquivo de catálogo somente se o arquivo de catálogo for especificado no arquivo INF do pacote de driver e o arquivo de catálogo se aplicar a uma ou mais das versões especificadas do Windows. Se a seção Versão do INF de um arquivo INF fornecer apenas uma diretiva CatalogFile=filename.cat , esse arquivo de catálogo se aplicará a todo o pacote de driver. Para dar suporte a instalações multiplataforma, o arquivo INF deve incluir CatalogFile. PlatformExtension=diretivas unique-filename.cat.
Para obter mais informações sobre como assinar um pacote de driver, consulte Assinatura de driver.
Para usar o Inf2Cat, você deve ser membro do grupo Administradores no sistema.
Exemplos
No exemplo a seguir, c:\MyDriver contém um pacote de driver cujo arquivo INF é MyInfFile.inf e a seção Versão INF no arquivo INF inclui apenas a seguinte diretiva CatalogFile :
[Version]
. . .
CatalogFile=MyCatalogFile.cat
. . .
Para este exemplo, o comando Inf2Cat a seguir verificaria se o pacote de driver pode ser assinado para Windows 10, versão 21H2, 21H1, 20H2, 2004 x64 Edition e para Windows 11, versão 21H2 x64 Edition. Se o pacote puder ser assinado para essas versões, o Inf2Cat criará o arquivo de catálogo não assinado MyCatalogFile.cat.
Inf2Cat /driver:C:\MyDriver /os:10_VB_X64,10_CO_X64
No exemplo a seguir, c:\MyDriver contém um pacote de driver cujo arquivo INF é MyInfFile.inf e a seção Versão INF no arquivo INF inclui apenas as duas diretivas CatalogFile a seguir com extensões de plataforma:
[Version]
. . .
CatalogFile.ntx86=MyCatalogFileX86.cat
CatalogFile.ntamd64=MyCatalogFileX64.cat
. . .
Para este exemplo, o comando Inf2Cat a seguir verificaria se o pacote de driver pode ser assinado para Windows 10, versão 1809 x86 Edition e X64 Edition. Além disso, ele verifica se ele pode ser assinado pelo Windows Windows 10, versão 1909, 1903 x86 Edition e X64 Edition. Se o pacote puder ser assinado para todas essas versões, o Inf2Cat criará os arquivos de catálogo não assinados MyCatalogFileX86.cat e MyCatalogFileX64.cat.
Inf2Cat /driver:C:\MyDriver /os:10_RS5_X86,10_RS5_X64,10_19H1_X86,10_19H1_X64
Para obter mais informações sobre como usar o Inf2Cat para criar um arquivo de catálogo, consulte Criando um arquivo de catálogo para um pacote de driver PnP.