Compartir a través de


Registro de un Device-Specific coins installer

Nota:

Las características descritas en esta sección no se admiten en paquetes de controladores universales o móviles. Consulte Uso de un archivo INF universal.

Para registrar un co-instalador específico del dispositivo, agregue las secciones siguientes al archivo INF del dispositivo:

;  :
;  :
[DestinationDirs]
XxxCopyFilesSection = 11                \\DIRID_SYSTEM
                                        \\ Xxx = driver or dev. prefix
;  :
;  :
[XxxInstall.OS-platform.CoInstallers]   \\ OS-platform is optional
CopyFiles = XxxCopyFilesSection
AddReg = Xxx.OS-platform.CoInstallers_AddReg
 
[XxxCopyFilesSection]
XxxCoInstall.dll
 
[Xxx.OS-platform.CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,"XxxCoInstall.dll, \
 XxxCoInstallEntryPoint"

La entrada de la sección DestinationDirs especifica que los archivos enumerados en la sección XxxCopyFilesSection se copiarán en el directorio del sistema. El prefijo Xxx debe ser un identificador único para el controlador, el dispositivo o un grupo de dispositivos (por ejemplo, cdrom_CopyFilesSection).

La siguiente sección, en el ejemplo XxxInstall.OS-platform.CoInstallersanterior, es DDInstall. Sección CoInstallers . El nombre de esta sección puede tener una extensión opcional de sistema operativo o arquitectura (por ejemplo, cdrom_install.NTx86.CoInstallers). Contiene una directiva CopyFiles que especifica una sección file-list-section denominada XxxCopyFilesSectiony una directiva AddReg que especifica una sección add-registry denominada Xxx.OS-platform.CoInstallers_AddReg.

La entrada de la sección add-registry crea una entrada de valor CoInstallers32 en la clave de controlador del dispositivo. La entrada contiene el archivo DLL del co-instalador y, opcionalmente, un punto de entrada específico. Si omite el punto de entrada, el valor predeterminado es CoDeviceInstall. El parámetro flags hexadecimal (0x00010000) especifica que se trata de una entrada de valor REG_MULTI_SZ .

Para registrar más de un co-instalador específico del dispositivo para un dispositivo, copie los archivos de cada co-instalador e incluya más de una cadena en la entrada del Registro. Por ejemplo, para registrar dos co-instaladores, cree secciones INF como las siguientes:

;   :
;   :
[DestinationDirs]
XxxCopyFilesSection = 11                \\DIRID_SYSTEM
                                        \\ Xxx = driver or dev. prefix
;   :
;   :
[XxxInstall.OS-platform.CoInstallers]   \\ OS-platform is optional
CopyFiles = XxxCopyFilesSection
AddReg = Xxx.OS-platform.CoInstallers_AddReg
 
[XxxCopyFilesSection]
XxxCoInstall.dll                         \\ copy 1st coinst. file
YyyCoInstall.dll                         \\ copy 2nd coinst. file
 
[Xxx.OS-platform.CoInstallers_AddReg]
HKR,,CoInstallers32,0x00010000,                 \
    "XxxCoInstall.dll, XxxCoInstallEntryPoint", \
    "YyyCoInstall.dll, YyyCoInstallEntryPoint"
                                         \\ add both to registry

Los coinstaladores específicos del dispositivo se registran durante el proceso de instalación de un dispositivo, cuando se procesa la sección INF de coinstaladores. SetupAPI llama a los coinstaladores en cada paso posterior del proceso de instalación. Si se registra más de un co-instalador para un dispositivo, SetupAPI los llama en el orden en que aparecen en el registro.