Condividi tramite


Inf2Cat

Inf2Cat (Inf2Cat.exe) è uno strumento da riga di comando che determina se il file INF di un pacchetto driver può essere firmato digitalmente per un elenco specificato di versioni di Windows. In tal caso, Inf2Cat genera i file di catalogo non firmati che si applicano alle versioni di Windows specificate.

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

Lo strumento Inf2Cat si trova nella cartella Programmi\Windows Kits\8.0\bin\x86 o Programmi (x86)\Windows Kits\8.0\bin\x86 di WDK.

Risoluzione dei problemi

Se viene visualizzato DriverVer set to a date in the future quando si compila il driver, modificare le impostazioni del progetto del pacchetto driver in modo che Inf2Cat imposti /uselocaltime. A tale scopo, usare Proprietà di configurazione-Inf2Cat-General-Use>>> Local Time. Ora sia Stampinf che Inf2Cat usano l'ora locale.

Se viene visualizzato An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) Signability test failed., provare una di queste soluzioni alternative:

  1. Impostare le impostazioni /nocat inf2cat del progetto su ed eseguire manualmente inf2cat.
  2. Eliminare inf2cat.exe.manifest dalla \x86 cartella del wdk attivo per fare in modo che lo strumento venga eseguito in Visual Studio.

Opzioni e argomenti

/driver:PackagePath

Specifica il percorso della directory che contiene i file INF per i pacchetti driver. Se la directory specificata contiene file INF per più pacchetti driver, Inf2Cat creerà i file di catalogo per ogni pacchetto driver.

Nota

È possibile usare l'opzione /drv: al posto dell'opzione /driver: .

/nocat

Configura Inf2Cat per verificare che il pacchetto driver sia conforme ai requisiti di firma per le versioni di Windows specificate, ma non per generare file di catalogo.

/os:WindowsVersionList

Configura Inf2Cat per verificare che il file INF di un pacchetto driver sia conforme ai requisiti di firma per le versioni di Windows specificate da WindowsVersionList. WindowsVersionList è un elenco delimitato da virgole che include uno o più degli identificatori di versione seguenti.

Versione di Windows Identificatore della versione
Windows 11, versione 22H2 x64 Edition 10_NI_X64
Windows 11, versione 22H2 Arm64 Edition 10_NI_ARM64
Windows 11, versione 21H2 x64 Edition 10_CO_X64
Windows 11, versione 21H2 Arm64 Edition 10_CO_ARM64
Windows Server 2022 x64 Edition ServerFE_X64
Windows Server 2022 Arm64 Edition ServerFE_ARM64
Windows 10, versione 22H2, 21H2, 21H1, 20H2, 2004 x86 Edition 10_VB_X86
Windows 10, versione 22H2, 21H2, 21H1, 20H2, 2004 x64 Edition 10_VB_X64
Windows 10, versione 22H2, 21H2, 21H1, 20H2, 2004 Arm64 Edition 10_VB_ARM64
Windows 10, versione 1909, 1903 x86 Edition 10_19H1_X86
Windows 10, versione 1909, 1903 x64 Edition 10_19H1_X64
Windows 10, versione 1909, 1903 Arm64 Edition 10_19H1_ARM64
Windows 10, versione 1809 x86 Edition 10_RS5_X86
Windows 10, versione 1809 x64 Edition 10_RS5_X64
Windows 10, versione 1809 Arm64 Edition 10_RS5_ARM64
Windows Server 2019 x64 Edition ServerRS5_X64
Windows Server 2019 Arm64 Edition ServerRS5_ARM64
Windows 10, versione 1803 x86 Edition 10_RS4_X86
Windows 10, versione 1803 x64 Edition 10_RS4_X64
Windows 10, versione 1803 Arm64 Edition 10_RS4_ARM64
Windows 10, versione 1709 x86 10_RS3_X86
Windows 10, versione 1709 x64 Edition 10_RS3_X64
Windows 10, versione 1709 Arm64 Edition 10_RS3_ARM64
Windows 10, versione 1703 x86 Edition 10_RS2_X86
Windows 10, versione 1703 x64 Edition 10_RS2_X64
Windows 10, versione 1607 x86 Edition 10_AU_X86
Windows 10, versione 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 sul braccio Server10_ARM64

Nota

A partire da Windows Server 2008 R2, i sistemi operativi Windows Server non supporteranno più piattaforme basate su x86.

Inf2Cat ignora la distinzione tra maiuscole e minuscole dei caratteri alfabetici delle stringhe dell'identificatore di versione. Ad esempio, 10_NI_X64 e 10_ni_X64 sono entrambi identificatori validi per Windows 11, versione 22H2 x64 Edition.

/uselocaltime

Usare il fuso orario locale durante l'esecuzione dei test di verifica del timestamp del driver. Per impostazione predefinita, viene usata l'ora UTC.

/verbose

Configura Inf2Cat per visualizzare informazioni dettagliate in una finestra di comando.

/?

Configura Inf2Cat per visualizzare le informazioni della Guida in una finestra di comando.

/Drm

Argomento della riga di comando deprecato.
Aggiungere l'attributo della firma DRM nel file inf per aggiungere l'attributo della firma DRM.

/Pe

Argomento della riga di comando deprecato.
Aggiungere l'attributo petrust signature nel file inf per aggiungere l'attributo petrust signature.

/pageHashes

Includi hash di pagina con file. Facoltativamente seguito da un elenco di file.

Commenti

Lo strumento Inf2Cat controlla i file INF del pacchetto driver per individuare gli errori strutturali e verifica che un pacchetto driver possa essere firmato digitalmente. Un pacchetto driver può essere firmato solo se tutti i file a cui viene fatto riferimento in un file INF sono presenti e i file di origine si trovano nel percorso corretto. Se non è possibile firmare un file INF o se contiene errori strutturali, il pacchetto driver potrebbe non essere installato correttamente o potrebbe visualizzare erroneamente una finestra di dialogo di avviso di firma del driver durante l'installazione.

Inf2Cat genera un file di catalogo solo se il file di catalogo è specificato nel file INF del pacchetto driver e il file di catalogo si applica a una o più versioni di Windows specificate. Se la sezione INF Version di un file INF fornisce solo una direttiva CatalogFile=filename.cat , tale file di catalogo si applica all'intero pacchetto driver. Per supportare installazioni multipiattaforma, il file INF deve includere CatalogFile. PlatformExtension=direttive unique-filename.cat.

Per altre informazioni sulla firma di un pacchetto driver, vedere Firma driver.

Per usare Inf2Cat, è necessario essere membri del gruppo Administrators nel sistema.

Esempio

Nell'esempio seguente c:\MyDriver contiene un pacchetto driver il cui file INF è MyInfFile.inf e la sezione INF Version nel file INF include solo la direttiva CatalogFile seguente:

[Version]
. . .
CatalogFile=MyCatalogFile.cat
. . .

Per questo esempio, il comando Inf2Cat seguente verifica se il pacchetto driver può essere firmato per Windows 10, versione 21H2, 21H1, 20H2, 2004 x64 Edition e per Windows 11 versione 21H2 x64 Edition. Se il pacchetto può essere firmato per queste versioni, Inf2Cat creerebbe il file di catalogo non firmato MyCatalogFile.cat.

Inf2Cat /driver:C:\MyDriver /os:10_VB_X64,10_CO_X64 

Nell'esempio seguente c:\MyDriver contiene un pacchetto driver il cui file INF è MyInfFile.inf e la sezione INF Version nel file INF include solo le due direttive CatalogFile seguenti con estensioni della piattaforma:

[Version]
. . .
CatalogFile.ntx86=MyCatalogFileX86.cat
CatalogFile.ntamd64=MyCatalogFileX64.cat
. . .

Per questo esempio, il comando Inf2Cat seguente verifica se il pacchetto driver può essere firmato per Windows 10, versione 1809 x86 Edition e X64 Edition. Verifica inoltre se può essere firmato da Windows Windows 10 versione 1909, 1903 x86 Edition e X64 Edition. Se il pacchetto può essere firmato per tutte queste versioni, Inf2Cat creerà i file di catalogo non firmati MyCatalogFileX86.cat e MyCatalogFileX64.cat.

Inf2Cat /driver:C:\MyDriver /os:10_RS5_X86,10_RS5_X64,10_19H1_X86,10_19H1_X64 

Per altre informazioni su come usare Inf2Cat per creare un file di catalogo, vedere Creazione di un file di catalogo per un pacchetto driver PnP.