Uso de funciones de instalación de dispositivos

En esta sección se resumen las funciones de instalación de dispositivos. Mediante las funciones de instalación del dispositivo, el software de instalación puede realizar los siguientes tipos de operaciones:

  • Instalación de controladores

  • Gestionar los códigos DIF.

  • Administrar conjuntos de información del dispositivo.

  • Administrar las listas de controladores.

  • Administrar interfaces del dispositivo.

  • Administrar iconos y otros mapas de bits.

En las tablas siguientes se proporcionan resúmenes de los siguientes tipos de funciones:

Funciones de instalación de controladores

Funciones de información del dispositivo

Funciones de información del conductor

Manejadores de instalación de dispositivos

Funciones de personalización de instalación de dispositivos

Funciones de la clase de configuración

Funciones de mapas de bits e iconos

Funciones de interfaz de dispositivo

Funciones de propiedad del dispositivo (Windows Vista y versiones posteriores)

Funciones del Registro

Otras funciones

Funciones de instalación de controladores

DiInstallDevice

Instala un paquete de controladores especificado que está preinstalado en el almacén de controladores en un dispositivo PnP que está presente en el sistema. (Windows Vista y versiones posteriores de Windows)

DiUninstallDevice

Desinstala un dispositivo y quita su nodo de dispositivo (devnode) del sistema. (Windows 7 y versiones posteriores de Windows)

DiInstallDriver

Preinstala un paquete de controladores en el almacén de controladores y, a continuación, instala el paquete de controladores en dispositivos PnP coincidentes que están presentes en el sistema. (Windows Vista y versiones posteriores de Windows)

DiUninstallDriver

Quita un paquete de controladores del Almacén de controladores. (Windows 10 versión 1703 y versiones posteriores de Windows)

UpdateDriverForPlugAndPlayDevices

Actualiza el paquete de controladores instalado para los dispositivos PnP coincidentes que están presentes en el sistema.

DiRollbackDriver

Revierte el paquete de controladores instalado en un dispositivo especificado al paquete de controladores de copia de seguridad establecido para el dispositivo. (Windows Vista y versiones posteriores de Windows)

Funciones de información del dispositivo

Nota:

SetupApi no es compatible con todas las ediciones de Windows. Cuando sea posible, debe usar LAS API de nivel inferior, como las disponibles a través de CfgMgr32.dll. Consulte Migración de SetupApi a CfgMgr32 para obtener sugerencias.

SetupDiCreateDeviceInfoList

Crea un conjunto de información de dispositivo vacío. Este conjunto se puede asociar a un GUID de clase.

SetupDiCreateDeviceInfoListEx

Crea un conjunto de información de dispositivo vacío. Este conjunto se puede asociar a un GUID de clase y puede ser para dispositivos de un equipo remoto.

SetupDiCreateDeviceInfo

Crea un nuevo elemento de información del dispositivo y lo agrega como un nuevo miembro al conjunto de información del dispositivo especificado.

SetupDiOpenDeviceInfo

Recupera información sobre una instancia de dispositivo existente y la agrega al conjunto de información del dispositivo especificado.

SetupDiEnumDeviceInfo

Devuelve una estructura de contexto para un elemento de información de dispositivo de un conjunto de información de dispositivo.

SetupDiGetDeviceInstanceId

Recupera el identificador de instancia de dispositivo asociado a un elemento de información del dispositivo.

SetupDiGetDeviceInfoListClass

Recupera el GUID de clase asociado a un conjunto de información del dispositivo si tiene una clase asociada.

SetupDiGetDeviceInfoListDetail

Recupera la información asociada a un conjunto de información del dispositivo, incluido el GUID de clase, el identificador del equipo remoto y el nombre del equipo remoto.

SetupDiGetClassDevPropertySheets

Recupera los identificadores de las hojas de propiedades de un elemento de información del dispositivo especificado o de la clase de configuración de dispositivos de un conjunto de información del dispositivo especificado.

SetupDiGetClassDevs

Devuelve un conjunto de información de dispositivo que contiene todos los dispositivos de una clase especificada.

SetupDiGetClassDevsEx

Devuelve un conjunto de información de dispositivo que contiene todos los dispositivos de una clase especificada en un equipo local o remoto.

SetupDiSetSelectedDevice

Establece el elemento de información del dispositivo especificado para que sea el miembro seleccionado actualmente de un conjunto de información del dispositivo. Normalmente, un asistente de instalación usa esta función.

SetupDiGetSelectedDevice

Recupera el dispositivo seleccionado actualmente para el conjunto de información del dispositivo especificado.

SetupDiRegisterDeviceInfo

Registra una instancia de dispositivo recién creada con el administrador de Plug and Play.

SetupDiDeleteDeviceInfo

Elimina un miembro del conjunto de información del dispositivo especificado. Esta función no elimina el dispositivo físico.

SetupDiDestroyDeviceInfoList

Destruye un conjunto de información del dispositivo y libera toda la memoria asociada.

Funciones de información de controladores

SetupDiBuildDriverInfoList

Crea una lista de controladores asociados a una instancia de dispositivo especificada o con la lista de controladores de clase global del conjunto de información del dispositivo.

SetupDiEnumDriverInfo

Enumera los miembros de una lista de información de controladores.

SetupDiGetDriverInfoDetail

Recupera información detallada de un elemento de información del driver especificado.

SetupDiSetSelectedDriver

Establece el miembro especificado de una lista de controladores como controlador seleccionado actualmente. También se puede utilizar para restablecer la lista de controladores, de modo que no haya ningún controlador seleccionado en ese momento.

SetupDiGetSelectedDriver

Recupera el miembro de una lista de controladores que se seleccionó como controlador que se va a instalar.

SetupDiCancelDriverInfoSearch

Cancela una búsqueda de lista de controladores que está actualmente en curso en un subproceso diferente.

SetupDiDestroyDriverInfoList

Destruye una lista de información de controladores.

Manejadores de instalación de dispositivos

SetupDiCallClassInstaller

Llama al instalador de clase adecuado y a los coinstaladores registrados, con la solicitud de instalación especificada.

SetupDiChangeState

Manejador predeterminado para la solicitud DIF_PROPERTYCHANGE. Se puede usar para cambiar el estado de un dispositivo instalado.

SetupDiRegisterCoDeviceInstallers

Registra los co-instaladores específicos del dispositivo enumerados en el archivo INF para el dispositivo especificado. Esta función es el controlador predeterminado para DIF_REGISTER_COINSTALLERS.

SetupDiInstallDevice

Manejador predeterminado para la solicitud de DIF_INSTALLDEVICE.

SetupDiInstallDriverFiles

Manejador predeterminado para la solicitud DIF_INSTALLDEVICEFILES.

SetupDiInstallDeviceInterfaces

El manejador predeterminado para la solicitud DIF_INSTALLINTERFACES. Instala las interfaces que aparecen en la sección DDInstall.Interfaces de un archivo INF de dispositivo.

SetupDiMoveDuplicateDevice

Esta función está obsoleta y no se puede usar en ninguna versión de Microsoft Windows.

SetupDiRemoveDevice

Manejador predeterminado para la solicitud de DIF_REMOVEDEVICE.

SetupDiUnremoveDevice

Controlador predeterminado para la solicitud de DIF_UNREMOVE.

SetupDiRegisterDeviceInfo

Controlador predeterminado para la solicitud de DIF_REGISTERDEVICE.

SetupDiSelectDevice

Manejador predeterminado para la solicitud DIF_SELECTDEVICE.

SetupDiSelectBestCompatDrv

Manejador predeterminado para la solicitud de DIF_SELECTBESTCOMPATDRV.

SetupDiSelectDevice

Manejador predeterminado para la solicitud de DIF_SELECTDEVICE.

Funciones de personalización de instalación de dispositivos

SetupDiGetClassInstallParams

Recupera parámetros de instalación de clase para un conjunto de información del dispositivo o un elemento de información de dispositivo determinado.

SetupDiSetClassInstallParams

Establece o borra los parámetros de instalación de clase para un conjunto de información del dispositivo o un elemento de información de dispositivo determinado.

SetupDiGetDeviceInstallParams

Recupera los parámetros de instalación del dispositivo para un conjunto de información del dispositivo o un elemento de información de dispositivo determinado.

SetupDiSetDeviceInstallParams

Establece parámetros de instalación de dispositivos para un conjunto de información de dispositivo o un elemento de información de dispositivo determinado.

SetupDiGetDriverInstallParams

Recupera los parámetros de instalación del controlador especificado.

SetupDiSetDriverInstallParams

Establece los parámetros de instalación para el controlador especificado.

Funciones de la clase Setup

SetupDiBuildClassInfoList

Devuelve una lista de GUID de clase de instalación que incluye todas las clases instaladas en el sistema.

SetupDiBuildClassInfoListEx

Devuelve una lista de GUID de clase de instalación que incluye todas las clases instaladas en el sistema local o en un sistema remoto.

SetupDiGetClassDescription

Recupera la descripción de clase asociada al GUID de clase de instalación especificado.

SetupDiGetClassDescriptionEx

Recupera la descripción de una clase de instalación instalada en un equipo local o remoto.

SetupDiGetINFClass

Recupera la clase de un archivo INF de dispositivo especificado.

SetupDiClassGuidsFromName

Recupera los GUID asociados al nombre de clase especificado. Esta lista se basa en qué clases están instaladas actualmente en el sistema.

SetupDiClassGuidsFromNameEx

Recupera los GUID asociados al nombre de clase especificado. Esta lista resultante contiene las clases instaladas actualmente en un equipo local o remoto.

SetupDiClassNameFromGuid

Recupera el nombre de clase asociado al GUID de clase.

SetupDiClassNameFromGuidEx

Recupera el nombre de clase asociado a un GUID de clase. La clase se puede instalar en un equipo local o remoto.

SetupDiInstallClass

Instala la sección ClassInstall32 del archivo INF especificado.

SetupDiInstallClassEx

Instala un instalador de clase o una clase de interfaz.

SetupDiOpenClassRegKey

Abre la clave del Registro de la clase de instalación del dispositivo o una subclave específica de la clase .

SetupDiOpenClassRegKeyEx

Abre la clave del Registro de la clase de instalación del dispositivo, la clave del Registro de clase de interfaz de dispositivo o una subclave específica de la clase . Esta función abre la clave del Registro especificada en el equipo local o en un equipo remoto.

Funciones de mapa de bits e iconos

SetupDiGetClassImageList

Crea una lista de imágenes que contiene mapas de bits para cada clase instalada y devuelve la lista en una estructura de datos.

SetupDiGetClassImageListEx

Compila una lista de imágenes de mapas de bits para cada clase instalada en un equipo local o remoto.

SetupDiGetClassImageIndex

Recupera el índice dentro de la lista de imágenes de clase de una clase especificada.

SetupDiGetClassBitmapIndex

Recupera el índice del miniicono proporcionado para la clase especificada.

SetupDiDrawMiniIcon

Dibuja el miniicono especificado en la ubicación solicitada.

SetupDiLoadClassIcon

Carga tanto el icono grande como el miniicono para la clase especificada.

SetupDiLoadDeviceIcon

Carga un icono de dispositivo para un dispositivo especificado. (Windows Vista y versiones posteriores de Windows)

SetupDiDestroyClassImageList

Destruye una lista de imágenes de una clase.

Funciones de interfaz de dispositivo

Nota:

SetupApi no es compatible con todas las ediciones de Windows. Cuando sea posible, debe usar LAS API de nivel inferior, como las disponibles a través de CfgMgr32.dll. Consulte Migración de SetupApi a CfgMgr32 para obtener sugerencias.

SetupDiCreateDeviceInterface

Registra la funcionalidad del dispositivo (una interfaz de dispositivo) para un dispositivo.

SetupDiOpenDeviceInterface

Recupera información sobre una interfaz de dispositivo existente y la agrega al conjunto de información del dispositivo especificado.

SetupDiGetDeviceInterfaceAlias

Devuelve un alias de la interfaz de dispositivo especificada.

SetupDiGetClassDevs

Devuelve un conjunto de información de dispositivo que contiene todos los dispositivos de una clase especificada.

SetupDiGetClassDevsEx

Devuelve un conjunto de información de dispositivo que contiene todos los dispositivos de una clase especificada en un equipo local o remoto.

SetupDiEnumDeviceInterfaces

Devuelve una estructura de contexto para un elemento de interfaz de dispositivo de un conjunto de información de dispositivo. Cada llamada devuelve información sobre una interfaz de dispositivo.

Se puede llamar a la función repetidamente para obtener información sobre varias interfaces expuestas por uno o varios dispositivos.

SetupDiGetDeviceInterfaceDetail

Devuelve detalles sobre una interfaz de dispositivo determinada.

SetupDiCreateDeviceInterfaceRegKey

Crea una subclave del Registro para almacenar información sobre una instancia de interfaz de dispositivo y devuelve un identificador a la clave.

SetupDiOpenDeviceInterfaceRegKey

Abre la subclave del Registro que usan las aplicaciones y los controladores para almacenar información específica de una instancia de interfaz de dispositivo y devuelve un identificador a la clave.

SetupDiDeleteDeviceInterfaceRegKey

Elimina la subclave del Registro utilizada por las aplicaciones y los controladores para almacenar información específica de una instancia de interfaz de dispositivo.

SetupDiInstallDeviceInterfaces

Es el controlador predeterminado de la solicitud de DIF_INSTALLINTERFACES. Instala las interfaces que aparecen en la sección DDInstall.Interfaces de un archivo INF de dispositivo.

SetupDiRemoveDeviceInterface

Quita una interfaz de dispositivo registrada del sistema.

SetupDiDeleteDeviceInterfaceData

Elimina una interfaz de dispositivo de un conjunto de información de dispositivo.

SetupDiSetDeviceInterfaceDefault

Establece una interfaz de dispositivo especificada como interfaz predeterminada para una clase de dispositivo.

SetupDiInstallClassEx

Instala un instalador de clase o una clase de interfaz.

SetupDiOpenClassRegKeyEx

Abre la clave del Registro de la clase de instalación del dispositivo , la clave del Registro de clase de interfaz de dispositivo o una subclave específica de la clase . Esta función abre la clave del Registro especificada en el equipo local o en un equipo remoto.

Funciones de propiedad del dispositivo (Windows Vista y versiones posteriores)

Nota:

SetupApi no es compatible con todas las ediciones de Windows. Cuando sea posible, debe usar LAS API de nivel inferior, como las disponibles a través de CfgMgr32.dll. Consulte Migración de SetupApi a CfgMgr32 para obtener sugerencias.

SetupDiGetClassProperty

Recupera una propiedad de dispositivo establecida para una clase de configuración de dispositivo o una clase de interfaz de dispositivo.

SetupDiGetClassPropertyEx

Recupera una propiedad de clase para una clase de configuración de dispositivo o una clase de interfaz de dispositivo en un equipo local o remoto.

SetupDiGetClassPropertyKeys

Recupera una matriz de las claves de propiedad del dispositivo que representan las propiedades del dispositivo establecidas para una clase de configuración de dispositivo o una clase de interfaz de dispositivo.

SetupDiGetClassPropertyKeysEx

Recupera una matriz de las claves de propiedad del dispositivo que representan las propiedades del dispositivo establecidas para una clase de configuración de dispositivo o una clase de interfaz de dispositivo en un equipo local o remoto.

SetupDiGetDeviceInterfaceProperty

Recupera una propiedad de dispositivo establecida para una interfaz de dispositivo.

SetupDiGetDeviceInterfacePropertyKeys

Recupera una matriz de claves de propiedad de dispositivo que representan las propiedades del dispositivo que se establecen para una interfaz de dispositivo.

SetupDiGetDeviceProperty

Recupera una propiedad de instancia de dispositivo.

SetupDiGetDevicePropertyKeys

Recupera una matriz de las claves de propiedad del dispositivo que representan las propiedades del dispositivo que se establecen para una instancia de dispositivo.

SetupDiSetClassProperty

Establece una propiedad de clase para una clase de configuración de dispositivo o una clase de interfaz de dispositivo.

SetupDiSetClassPropertyEx

Establece una propiedad de dispositivo para una clase de configuración de dispositivo o una clase de interfaz de dispositivo en un equipo local o remoto.

SetupDiSetDeviceInterfaceProperty

Establece una propiedad de dispositivo de una interfaz de dispositivo.

SetupDiSetDeviceProperty

Establece una propiedad de instancia de dispositivo.

Funciones del Registro

Nota:

SetupApi no es compatible con todas las ediciones de Windows. Cuando sea posible, debe usar LAS API de nivel inferior, como las disponibles a través de CfgMgr32.dll. Consulte Migración de SetupApi a CfgMgr32 para obtener sugerencias.

SetupDiCreateDevRegKey

Crea una clave de almacenamiento del Registro para la información de configuración específica del dispositivo y devuelve un identificador a la clave.

SetupDiOpenDevRegKey

Abre una clave de almacenamiento del Registro para la información de configuración específica del dispositivo y devuelve un identificador a la clave.

SetupDiDeleteDevRegKey

Elimina la clave o claves de registro accesibles para el usuario asociadas a un elemento de información del dispositivo especificado.

SetupDiOpenClassRegKey

Abre la clave del Registro de clase de instalación o una subclave específica de la clase .

SetupDiOpenClassRegKeyEx

Abre la clave del Registro de la clase de instalación del dispositivo, la clave del Registro de clase de interfaz de dispositivo o una subclave específica de la clase .

Esta función abre la clave especificada en el equipo local o en un equipo remoto.

SetupDiCreateDeviceInterfaceRegKey

Crea una subclave del Registro no volátil para almacenar información sobre una instancia de interfaz de dispositivo y devuelve un identificador a la clave.

SetupDiOpenDeviceInterfaceRegKey

Abre la subclave del Registro que usan las aplicaciones y los controladores para almacenar información específica de una instancia de interfaz de dispositivo y devuelve un identificador de la clave.

SetupDiDeleteDeviceInterfaceRegKey

Elimina la subclave del Registro que usaron las aplicaciones y los controladores para almacenar información específica de una instancia de interfaz de dispositivo.

SetupDiSetDeviceRegistryProperty

Establece la propiedad de dispositivo Plug and Play especificada.

SetupDiGetDeviceRegistryProperty

Recupera la propiedad de dispositivo Plug and Play especificada.

SetupDiGetClassRegistryProperty

Recupera una propiedad de clase de dispositivo especificada del Registro.

SetupDiSetClassRegistryProperty

Establece en el Registro una propiedad de clase de dispositivo especificada.

Otras funciones

SetupDiGetActualModelsSection

Recupera la sección Models del INF decorada apropiada que se va a utilizar al instalar un dispositivo desde un archivo INF del dispositivo.

SetupDiGetActualSectionToInstall

Recupera la sección DDInstall adecuada que se usará al instalar un dispositivo desde un archivo INF de dispositivo.

SetupDiGetActualSectionToInstallEx

Recupera el nombre de la sección DDInstall del INF que instala un dispositivo para un sistema operativo y una arquitectura de procesador especificados.

SetupDiGetHwProfileFriendlyName

Recupera el nombre descriptivo asociado a un identificador de perfil de hardware.

SetupDiGetHwProfileFriendlyNameEx

Recupera el nombre descriptivo asociado a un identificador de perfil de hardware en un equipo local o remoto.

SetupDiGetHwProfileList

Recupera una lista de todos los identificadores de perfil de hardware definidos actualmente.

SetupDiGetHwProfileListEx

Recupera una lista de todos los identificadores de perfil de hardware definidos actualmente en un equipo local o remoto.

SetupDiRestartDevices

Reinicia un dispositivo especificado o, si es necesario, inicia todos los dispositivos que usan la misma función y los mismos controladores de filtro que usa el dispositivo especificado.