Función SetupDiSelectDevice (setupapi.h)

La función SetupDiSelectDevice es el controlador predeterminado para la solicitud de DIF_SELECTDEVICE .

Sintaxis

WINSETUPAPI BOOL SetupDiSelectDevice(
  [in]      HDEVINFO         DeviceInfoSet,
  [in, out] PSP_DEVINFO_DATA DeviceInfoData
);

Parámetros

[in] DeviceInfoSet

Identificador de un conjunto de información de dispositivo que contiene un elemento de información del dispositivo que representa el dispositivo para el que se va a seleccionar un controlador.

[in, out] DeviceInfoData

Puntero a una estructura de SP_DEVINFO_DATA que especifica el elemento de información del dispositivo. Este parámetro es opcional y puede ser NULL. Si se especifica este parámetro, SetupDiSelectDevice selecciona el controlador para el dispositivo especificado y establece DeviceInfoData.ClassGuid al GUID de la clase de configuración del dispositivo para el controlador seleccionado. Si este parámetro es NULL, SetupDiSelectDevice establece el controlador seleccionado en la lista global de controladores de clase para DeviceInfoSet.

Valor devuelto

La función devuelve TRUE si se realiza correctamente. De lo contrario, devuelve FALSE y el error registrado se puede recuperar mediante una llamada a GetLastError.

Comentarios

SetupDiSelectDevice controla la interfaz de usuario que permite al usuario seleccionar un controlador para el dispositivo especificado o un conjunto de información del dispositivo si no se especifica un dispositivo. Al establecer el campo Marcas de la estructura de SP_DEVINSTALL_PARAMS para el dispositivo o el conjunto de información del dispositivo si no se especifica un dispositivo, el autor de la llamada puede especificar un control especial de la interfaz de usuario, por ejemplo, para permitir que los usuarios seleccionen un controlador de un disco de instalación oem.

Nota Solo un instalador de clase debe llamar a SetupDiSelectDevice y solo en aquellas situaciones en las que el instalador de clase debe realizar operaciones de selección de controladores después de que SetupDiSelectDevice complete la operación de selección de controladores predeterminada. En tales situaciones, el instalador de clase debe llamar directamente a SetupDiSelectDevice cuando el instalador procesa una solicitud de DIF_SELECTDEVICE. Para obtener más información sobre cómo llamar al controlador predeterminado, vea Llamar a controladores de código DIF predeterminados.
 
SetupDiSelectDevice está diseñado principalmente para seleccionar un controlador para un dispositivo en un equipo local antes de instalar el dispositivo. Aunque SetupDiSelectDevice no producirá un error si el conjunto de información del dispositivo es para un equipo remoto, el resultado es de uso limitado porque el conjunto de información del dispositivo no se puede usar posteriormente con solicitudes de instalación DIF_Xxx o funciones SetupDiXxx que no admiten operaciones en un equipo remoto. En concreto, el conjunto de información del dispositivo no se puede usar como entrada con una solicitud de instalación de DIF_INSTALLDEVICE para instalar un dispositivo en un equipo remoto.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Microsoft Windows 2000 y versiones posteriores de Windows.
Plataforma de destino Escritorio
Encabezado setupapi.h (incluya Setupapi.h)
Library Setupapi.lib
Archivo DLL Setupapi.dll

Consulte también

SP_DEVINSTALL_PARAMS

SetupDiCallClassInstaller