Condividi tramite


Sezione Versione INF

Per convenzione, la sezione Version viene visualizzata per prima nei file INF. Ogni file INF deve avere questa sezione.

[Version]
 
Signature="signature-name"
[Class=class-name]
[ClassGuid={nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn}]
[Provider=%INF-creator%]
[ExtensionId={xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}]
[LayoutFile=filename.inf [,filename.inf]... ]  (Windows 2000 and Windows XP)
[CatalogFile=filename.cat]
[CatalogFile.nt=unique-filename.cat]
[CatalogFile.ntx86=unique-filename.cat]
[CatalogFile.ntia64=unique-filename.cat]  (Windows XP and later versions of Windows)
[CatalogFile.ntamd64=unique-filename.cat]  (Windows XP and later versions of Windows)
[CatalogFile.ntarm=unique-filename.cat]  (Windows 8 and later versions of Windows)
[CatalogFile.ntarm64=unique-filename.cat]  (Windows 10 version 1709 and later versions of Windows)

DriverVer=mm/dd/yyyy,w.x.y.z
[PnpLockDown=0|1] (Windows Vista and later versions of Windows)
[DriverPackageDisplayName=%driver-package-description%]
[DriverPackageType=PackageType]

whse.

Signature="signature-name"
Deve essere $Windows NT$ o $Chicago$. Indica i sistemi operativi per i quali questo INF è valido. Questi valori di firma hanno i significati seguenti.

Valore firma significato
$Windows NT$ Tutti i sistemi operativi Windows
$Chicago$ Tutti i sistemi operativi Windows

I caratteri di segno di dollaro racchiusi ($) sono obbligatori, ma queste stringhe non fanno distinzione tra maiuscole e minuscole. Se il nome della firma non è uno di questi valori stringa, il file non viene accettato come INF valido.

In genere, Windows non distingue tra questi valori di firma. Uno di essi deve essere specificato, ma non importa quale. È necessario specificare il valore appropriato in modo che un utente che legge un file INF possa determinare i sistemi operativi per cui è previsto.

Alcuni programmi di installazione di classe specificano requisiti aggiuntivi sul modo in cui è necessario specificare il valore della firma. Tali requisiti, se esistenti, vengono illustrati nelle sezioni specifiche del tipo di dispositivo di questo Windows Driver Kit (WDK).

Un INF deve fornire informazioni di installazione specifiche del sistema operativo aggiungendo estensioni definite dal sistema alle relative sezioni DDInstall, indipendentemente dal fatto che il nome della firma sia $Windows NT$ o $Chicago$. (Vedere Creazione di file INF per più piattaforme e sistemi operativi per una descrizione di queste estensioni.

Class=class-name
Per qualsiasi tipo di dispositivo standard, specifica il nome della classe di installazione del dispositivo per il tipo di dispositivo installato usando questo file INF. Questo nome è in genere uno dei nomi di classe definiti dal sistema, ad esempio Net o Display, elencati in Devguid.h. Per altre informazioni, vedere Classi di installazione del dispositivo fornite dal sistema.

Se un INF specifica una classe, deve specificare anche il valore GUID definito dal sistema corrispondente per la voce ClassGUID corrispondente. Specificando il valore GUID corrispondente per un dispositivo di qualsiasi classe di installazione predefinita del dispositivo, è possibile installare il dispositivo e i relativi driver più velocemente perché questo consente al codice di installazione del sistema di ottimizzare la ricerca INF.

Se un INF aggiunge una nuova classe di installazione di dispositivi al sistema, deve fornire un valore univoco senza distinzione tra maiuscole e minuscole che differisce da una delle classi fornite dal sistema in Devguid.h. La lunghezza della stringa del nome di classe deve essere di almeno 32 caratteri. InF deve specificare un valore GUID appena generato per la voce ClassGUID . Vedere anche la sezione INF ClassInstall32.

Questa voce è irrilevante per un INF che non installa né un nuovo driver di dispositivo con una classe di installazione predefinita del dispositivo né una nuova classe di installazione del dispositivo.

Nota

Questa voce è necessaria per i driver di dispositivo installati tramite il gestore Plug and Play (PnP).

ClassGuid={nnnnnnnn-nnnn-nnnn}--
Specifica il GUID della classe di installazione del dispositivo. Il valore GUID viene formattato come illustrato di seguito, dove ogni n è una cifra esadecimale.

Questo valore GUID specifica la classe di installazione del dispositivo da assegnare ai dispositivi installati da questo file INF. Questo valore GUID specifico della classe identifica anche il programma di installazione della classe dispositivo per il tipo di provider di pagine delle proprietà specifico della classe e del dispositivo, se presente.

Per una nuova classe di installazione del dispositivo, INF deve specificare un valore ClassGUID appena generato. Per altre informazioni su come creare GUID, vedere Uso dei GUID nei driver. Vedere anche Classi di installazione del dispositivo.

Nota

Questa voce è necessaria per i driver di dispositivo installati tramite gestione PnP.

ExtensionId={xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
Specifica il GUID dell'ID di estensione durante la creazione di un'estensione INF. Il valore GUID viene formattato come illustrato di seguito, dove ogni x è una cifra esadecimale.

Quando si crea la versione iniziale di un'estensione INF, INF deve specificare un valore ExtensionId appena generato. Tuttavia, quando si aggiorna un'estensione esistente INF, ExtensionId deve rimanere invariato in modo che più versioni correlate dell'estensione INF vengano sottoposte a versioni l'una rispetto all'altra anziché essere considerate come file INFS indipendenti che possono essere installate contemporaneamente nella stessa istanza del dispositivo. Per altre informazioni su come creare file INF di estensione, vedere Uso di un file INF di estensione.

Nota

Questa voce è necessaria solo quando si crea un'estensione INF, come identificato specificando Class = Extension e ClassGuid = {e2f84ce7-8efa-411c-aa69-97454ca4cb57}.

ClassVer=major.minore
Riservato per l'uso del sistema a meno che non sia richiesto in modo esplicito da una classe di dispositivo, ad esempio Printer. Ad esempio, vedere V4 Driver INF.

Provider=%INF-creator%
Identifica il provider del file INF. In genere, questo valore viene specificato come %token OrganizationName% espanso più avanti nella sezione Stringhe del file INF. La lunghezza massima, in caratteri, di un nome del provider è LINE_LEN.

Ad esempio, i file INF forniti con il sistema specificano in genere INF-creator come %Msft e definiscono% Msft%% = "Microsoft" nelle sezioni Stringhe.

Nota

Questa voce è necessaria per i driver di dispositivo installati tramite gestione PnP.

CatalogFile=filename.cat
Specifica un catalogo (.cat) file da includere nel supporto di distribuzione di un pacchetto driver.

Quando un pacchetto driver viene inviato a Microsoft per la firma digitale, WHQL fornisce un file di catalogo per il pacchetto driver dopo che WHQL ha testato e assegnato firme digitali al pacchetto. Per altre informazioni sui test e sulla firma dei pacchetti driver IHV o OEM, vedere Firma di versione WHQL. I file di catalogo non sono elencati nella sezione SourceDisksFiles o nella direttiva CopyFiles di INF. Windows presuppone che il file di catalogo si trova nella stessa posizione del file INF.

I file INF forniti dal sistema non hanno mai voci CatalogFile= perché il sistema operativo convalida la firma per tale INF per tutti i file di xxx.cat forniti dal sistema.

CatalogFile.nt=unique-filename.cat |
CatalogFile.ntx86=unique-filename.cat |
CatalogFile.ntia64=unique-filename.cat |
CatalogFile.ntamd64=unique-filename.cat
CatalogFile.ntarm=unique-filename.cat
CatalogFile.ntarm64=unique-filename.cat

Specifica un altro nome di file univoco determinato da INF-writer, con .estensione cat , di un file di catalogo. Se queste voci facoltative vengono omesse, viene usato un determinato CatalogFile=filename.cat per convalidare le installazioni di dispositivi/driver WDM.

Se un oggetto CatalogFile è decorato.Xxx= entry exists in an INF's Version section with an undecorated CatalogFile= entry, the undecorated entry is assumed to identify a filename.cat for validating device installations, driver installations, or both on those platforms for which a decorated entry is not specified.

Qualsiasi file INF del driver di dispositivo multipiattaforma con CatalogFile= e CatalogFile.xxx= voci deve fornire un nome univoco determinato da IHV/OEM per ogni file con estensione cat.

Per altre informazioni su come usare le estensioni .nt, .ntx86, .ntia64, .ntamd64, ntarm e ntarm64 definite dal sistema, vedere Creazione di file INF per più piattaforme e sistemi operativi.

Nota

Poiché lo stesso file con estensione cat può essere usato in tutte le piattaforme supportate, l'uso di questa voce non è obbligatorio o consigliato. Tuttavia, è necessario usare questa voce se si desidera creare file cat specifici della piattaforma per il pacchetto driver.

DriverVer= mm/gg/aaaaa,w.x.y.z
Questa voce specifica le informazioni sulla versione per i driver installati da questo file INF. A partire da Windows 2000, questa voce è obbligatoria.

Per informazioni su come specificare questa voce, vedere Direttiva INF DriverVer.

PnpLockDown=0|1
Specifica se Plug and Play (PnP) impedisce alle applicazioni di modificare direttamente i file specificati dal file INF di un pacchetto driver. Se la direttiva PnpLockDown è impostata su 1, PnP impedisce alle applicazioni di modificare direttamente i file copiati dalle direttive COPYFiles INF. In caso contrario, se la direttiva non è inclusa in un file INF o il valore della direttiva è impostato su zero, un'applicazione con privilegi di amministratore può modificare direttamente questi file. I file di driver protetti in questo modo vengono definiti file di driver protetti di terze parti.

Per garantire l'integrità di un'installazione del driver PnP, le applicazioni non devono modificare direttamente i file driver copiati dal file INF del pacchetto driver. Le applicazioni devono usare solo i meccanismi di installazione dei dispositivi forniti da Windows per aggiornare i driver PnP.

A partire da Windows Vista, un pacchetto driver deve impostare PnpLockDown su 1 per impedire a un'applicazione di modificare direttamente i file driver. Tuttavia, alcune applicazioni esistenti che disinstallano i pacchetti driver eliminano direttamente i file driver. Per mantenere la compatibilità con queste applicazioni, la direttiva PnpLockDown per tale pacchetto driver deve essere impostata su zero.

Nota

Anche se PnP in Windows Vista e versioni successive di Windows non richiede che un file INF includa una direttiva PnpLockDown per installare un driver, PnP in una versione futura di Windows potrebbe richiedere che i file INF per i pacchetti driver PnP includano la direttiva PnpLockDown.

DriverPackageDisplayName=%driver-package-description%
Deprecato. È stato usato in precedenza da Driver Install Frameworks (DIFx). Per informazioni sulla deprecazione di DIFx, vedi Linee guida per DIFx.

DriverPackageType= PackageType
Deprecato. È stato usato in precedenza da Driver Install Frameworks (DIFx). Per informazioni sulla deprecazione di DIFx, vedi Linee guida per DIFx.

Osservazioni:

Quando un pacchetto driver supera i test di Microsoft Windows Hardware Quality Lab (WHQL), WHQL restituisce i file di catalogo cat all'OEM o IHV. Ogni file con estensione cat contiene una firma crittografata digitalmente per il pacchetto driver. L'IHV o l'OEM deve elencare questi file cat nella sezione VERSIONE INF e deve fornire i file nel supporto di distribuzione, nella stessa posizione del file INF. I file con estensione cat devono essere decompressi.

Nota

Se una sezione versione INF non include almeno una voce CatalogFile o CatalogFile.nt xxx, il driver viene considerato non firmato e le date elencate nella direttiva DriverVer non vengono visualizzate da Windows.

Per altre informazioni, vedere Firma del driver.

Esempi

L'esempio seguente mostra una sezione Version tipica di un pacchetto driver semplice INF, seguita dalle sezioni SourceDisksNames e SourceDisksFiles obbligatorie implicite nelle voci specificate in questa sezione Version di esempio:

[Version]
Signature="$Windows NT$"
Class=SCSIAdapter
ClassGUID={4D36E97B-E325-11CE-BFC1-08002BE10318}
Provider=%INF_Provider%
CatalogFile=example.cat
DriverVer=01/29/2010,1.2.3.4
PnpLockdown=1

[SourceDisksNames]
;
; diskid = description[, [tagfile] [, <unused>, subdir]]
;
1 = %Disk_Description%,,,\WinNT

[SourceDisksFiles.x86]
;
; filename_on_source = diskID[, [subdir][, size]]
;
exampleDriver.sys = 1,\x86

; ...

[Strings]
INF_Provider="Contoso"
Disk_Description = "Contoso Drivers Disk"
; ...

Vedi anche

DDInstall

SourceDisksNames

SourceDisksFiles

Stringhe