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:
- Impostare le impostazioni
/nocat
inf2cat del progetto su ed eseguire manualmente inf2cat. - 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.