Función SetupDiRestartDevices (setupapi.h)
La función SetupDiRestartDevices reinicia un dispositivo especificado o, si es necesario, reinicia todos los dispositivos operados por la misma función y los controladores de filtro que operan el dispositivo especificado.
Sintaxis
WINSETUPAPI BOOL SetupDiRestartDevices(
[in] HDEVINFO DeviceInfoSet,
[in, out] PSP_DEVINFO_DATA DeviceInfoData
);
Parámetros
[in] DeviceInfoSet
Identificador de un conjunto de información del dispositivo que contiene el elemento de información del dispositivo que representa el dispositivo que se va a reiniciar.
[in, out] DeviceInfoData
Puntero a una estructura de SP_DEVINFO_DATA para el miembro de información del dispositivo que representa el dispositivo que se va a reiniciar. Este parámetro también es un parámetro de salida porque SetupDiRestartDevices actualiza los parámetros de instalación del dispositivo para este miembro de información del dispositivo y el código de estado y problema de la instancia de dispositivo correspondiente. Para obtener más información sobre estas actualizaciones, vea la siguiente sección Comentarios .
Valor devuelto
Si la operación se realiza correctamente, SetupDiRestartDevices devuelve TRUE; de lo contrario, la función devuelve FALSE y el error registrado se puede recuperar mediante una llamada a GetLastError.
Comentarios
Solo un instalador de clase debe llamar a SetupDiRestartDevices cuando un instalador de clase controla una solicitud de DIF_INSTALLDEVICE y solo en raras situaciones en las que el instalador de clase debe realizar operaciones después de todas las operaciones de instalación predeterminadas, excepto para iniciar un dispositivo, han completado . Para obtener más información sobre cómo llamar a SetupDiRestartDevices en estas situaciones , consulte DIF_INSTALLDEVICE.
SetupDiRestartDevices reinicia solo el dispositivo especificado si el reinicio se puede realizar sin afectar a la instalación de otros dispositivos operados por el mismo controlador de función o controladores de filtro que operan el dispositivo. En concreto, si el reinicio del dispositivo especificado no copia nuevos archivos ni modifica los archivos que se instalaron previamente para el dispositivo, SetupDiRestartDevices reinicia solo el dispositivo especificado. De lo contrario, la función reinicia todos los dispositivos operados por la misma función y los controladores de filtro que operan el dispositivo especificado.
SetupDiRestartDevices actualiza los parámetros de instalación del dispositivo y el estado del dispositivo para reflejar el resultado de la operación de reinicio intentado. Por ejemplo:
- Si se inicia el dispositivo, SetupDiRestartDevices establece el estado del dispositivo en DN_STARTED.
- Si es necesario reiniciar el sistema para iniciar un dispositivo, SetupDiRestartDevices establece la marca DI_NEEDREBOOT en el miembro Flags de la estructura SP_DEVINSTALL_PARAMETER asociada al elemento de información del dispositivo y establece el código de problema del dispositivo en CM_PROB_NEED_RESTART.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows Server 2003 y versiones posteriores de Windows. |
Plataforma de destino | Escritorio |
Encabezado | setupapi.h (incluya Setupapi.h) |
Library | Setupapi.lib |
Archivo DLL | Setupapi.dll |