Función SetupDiRemoveDevice (setupapi.h)

La función SetupDiRemoveDevice es el controlador predeterminado para la solicitud de instalación de DIF_REMOVE .

Sintaxis

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

Parámetros

[in] DeviceInfoSet

Identificador de un conjunto de información de dispositivo para el sistema local que contiene un elemento de información del dispositivo que representa el dispositivo que se va a quitar.

[in, out] DeviceInfoData

Puntero a una estructura de SP_DEVINFO_DATA que especifica el elemento de información del dispositivo en DeviceInfoSet. Se trata de un parámetro IN-OUT porque DeviceInfoSet. DevInst puede actualizarse con un nuevo valor de identificador al devolverlo. Si se trata de una eliminación global o la última eliminación específica del perfil de hardware, todos los seguimientos de la instancia del dispositivo se eliminan del registro y el identificador será NULL.

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

SetupDiRemoveDevice quita el dispositivo del sistema. Elimina las claves del Registro de hardware y software del dispositivo y las claves del Registro específicas del perfil de hardware (claves del Registro específicas de la configuración). Esta función detiene dinámicamente el dispositivo si su DevInst está activo y se trata de una eliminación global o la última eliminación específica de la configuración. Si el dispositivo no se puede detener dinámicamente, las marcas se establecen en el bloque Parámetro de instalación del conjunto de información del dispositivo que finalmente hace que se le pida al usuario que reinicie el equipo.

La eliminación de dispositivos es global para todos los perfiles de hardware o específicos de un perfil de hardware, tal y como especifica el miembro Scope de la estructura SP_REMOVEDEVICE_PARAMS que proporciona los parámetros de instalación de clase para la solicitud de DIF_REMOVE. La eliminación específica de la configuración solo es adecuada para los dispositivos enumerados en raíz y solo debe solicitarse por código del sistema.

El autor de la llamada de SetupDiRemoveDevice debe ser miembro del grupo Administradores.

Nota Solo un instalador de clase debe llamar a SetupDiRemoveDevice y solo en aquellas situaciones en las que el instalador de clase debe realizar operaciones de eliminación de dispositivos después de que SetupDiRemoveDevice complete la operación predeterminada de eliminación de dispositivos. En tales situaciones, el instalador de clase debe llamar directamente a SetupDiRemoveDevice cuando el instalador procesa una solicitud de DIF_REMOVE. Para obtener más información sobre cómo llamar al controlador predeterminado, vea Llamar a controladores de código DIF predeterminados.
 

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_DEVINFO_DATA

SP_REMOVEDEVICE_PARAMS