Registrazione di un co-programma di installazione della classe

Nota

Le funzionalità descritte in questa sezione non sono supportate nei pacchetti di driver universali o mobili. Vedere Uso di un file INF universale.

Per registrare un co-installer per ogni dispositivo di una determinata classe di installazione, creare una voce del Registro di sistema simile alla seguente nella sottochiave HKLM\System\CurrentControlSet\Control\CoDeviceInstallers :

{setup-class-GUID}: REG_MULTI_SZ : "XyzCoInstall.dll,XyzCoInstallEntryPoint\0\0"

Il sistema crea la chiave CoDeviceInstallers . Setup-class-GUID specifica il GUID per la classe di installazione del dispositivo. Se il co-programma di installazione si applica a più di una classe di dispositivi, creare una voce di valore separata per ogni classe di installazione.

Non è necessario sovrascrivere altri co-installer scritti in precedenza nella chiave setup-class-GUID . Leggere la chiave, aggiungere la stringa di co-installer all'elenco di REG_MULTI_SZ e scrivere nuovamente la chiave nel Registro di sistema.

Se si omette CoInstallEntryPoint, il valore predefinito è CoDeviceInstall.

La DLL co-installer deve essere copiata anche nella directory di sistema.

Il co-programma di installazione della classe è disponibile per essere chiamato per i dispositivi e i servizi pertinenti una volta copiato il file e la voce del Registro di sistema viene effettuata.

Anziché creare manualmente la voce del Registro di sistema per registrare un co-installer di classe, è possibile registrarla usando un file INF come l'esempio seguente:

[DestinationDirs]
DefaultDestDir = 11    // DIRID_SYSTEM

[DefaultInstall]
CopyFiles = @classXcoinst.dll
AddReg = CoInstaller_AddReg

[CoInstaller_AddReg]
HKLM,System\CurrentControlSet\Control\CoDeviceInstallers, \
 {setup-class-GUID},0x00010008, "classXcoinst.dll,classXCoInstaller"
; above line uses the line continuation character ()

Questo esempio INF copia il file classXcoinst.dll nella directory di sistema e crea una voce per la classe setup-class-GUID nella chiave CoDeviceInstallers . La voce nella sezione Xxx_AddReg specifica due flag: il flag "00010000" specifica che la voce è una REG_MULTI_SZ e il flag " 00000008" specifica che il nuovo valore deve essere aggiunto a qualsiasi valore esistente (se il nuovo valore non è già presente nella stringa).

Tale INF che registra un co-installer di classe può essere attivato da un'installazione con il pulsante destro del mouse o tramite un'applicazione che chiama SetupInstallFromInfSection.