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.