Uso de funciones de instalación de dispositivos

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

  • Instalación de controladores

  • Controlar códigos DIF.

  • Administrar conjuntos de información de dispositivos.

  • Administrar listas de controladores.

  • Administrar interfaces de 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 controlador

Controladores de instalación de dispositivos

Funciones de personalización de instalación de dispositivos

Funciones de clase setup

Funciones de mapa de bits e icono

Funciones de interfaz de dispositivo

Funciones de propiedad device (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

Novedades el paquete de controladores que se instala 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 se admite en 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 en 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 de 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 información asociada a un conjunto de información del dispositivo, incluido el GUID de clase, el identificador de equipo remoto y el nombre del equipo remoto.

SetupDiGetClassDevPropertySheets

Recupera identificadores de las hojas de propiedades de un elemento de información de dispositivo especificado o de la clase de configuración del dispositivo de un conjunto de información de 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 para la 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 real.

SetupDiDestroyDeviceInfoList

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

Funciones de información del controlador

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 para un elemento de información del controlador especificado.

SetupDiSetSelectedDriver

Establece el miembro especificado de una lista de controladores como el controlador seleccionado actualmente. También se puede usar para restablecer la lista de controladores para que no haya ningún controlador seleccionado actualmente.

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 del controlador.

Controladores 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

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

SetupDiRegisterCoDeviceInstallers

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

SetupDiInstallDevice

Controlador predeterminado para la solicitud de DIF_INSTALLDEVICE.

SetupDiInstallDriverFiles

Controlador predeterminado para la solicitud de DIF_INSTALLDEVICEFILES.

SetupDiInstallDeviceInterfaces

Controlador predeterminado para la solicitud de DIF_INSTALLINTERFACES. Instala las interfaces que aparecen en un DDInstall. Sección 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

Controlador 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

Controlador predeterminado para la solicitud de DIF_SELECTDEVICE.

SetupDiSelectBestCompatDrv

Controlador predeterminado para la solicitud de DIF_SELECTBESTCOMPATDRV.

SetupDiSelectDevice

Controlador 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 de 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 parámetros de instalación para el controlador especificado.

SetupDiSetDriverInstallParams

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

Funciones de 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 device setup o una subclave específica de la clase .

SetupDiOpenClassRegKeyEx

Abre la clave del Registro de la clase device setup, 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.

Funciones de mapa de bits e icono

SetupDiGetClassImageList

Compila 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 clase.

Funciones de interfaz de dispositivo

Nota:

SetupApi no se admite en todas las ediciones de Windows. Cuando sea posible, debe usar API de capa inferior como las disponibles a través deCfgMgr32.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 de 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 del 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 que usaron las aplicaciones y los controladores para almacenar información específica de una instancia de interfaz de dispositivo.

SetupDiInstallDeviceInterfaces

Es el controlador predeterminado para la solicitud de DIF_INSTALLINTERFACES. Instala las interfaces que aparecen en un DDInstall. Sección 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 del 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 clase de instalación de dispositivos , 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.

Funciones de propiedad device (Windows Vista y versiones posteriores)

Nota

SetupApi no se admite en 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 que se establecen 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 que se establecen 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 se admite en 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 las claves del Registro accesibles para el usuario especificadas asociadas a un elemento de información del dispositivo.

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 clase de instalación de dispositivos, 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 a 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 una propiedad de clase de dispositivo especificada en el Registro.

Otras funciones

SetupDiGetActualModelsSection

Recupera la sección Modelos INF decoradas adecuada que se usará 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 del dispositivo.

SetupDiGetActualSectionToInstallEx

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

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 operados por la misma función y los controladores de filtro que el dispositivo especificado.