Función PoQueryWatchdogTime (wdm.h)

La rutina PoQueryWatchdogTime indica si el administrador de energía ha habilitado un contador de tiempo de espera de guardián para cualquier IRP de energía asignado actualmente a la pila de dispositivos.

Sintaxis

BOOLEAN PoQueryWatchdogTime(
  [in]  PDEVICE_OBJECT Pdo,
  [out] PULONG         SecondsRemaining
);

Parámetros

[in] Pdo

Puntero a un objeto de dispositivo físico (PDO). Este parámetro apunta a una estructura de DEVICE_OBJECT que representa un dispositivo físico.

[out] SecondsRemaining

Puntero a una ubicación en la que la rutina escribe el tiempo, en segundos, que permanece antes de que se establezca el siguiente tiempo de espera del guardián de energía.

Valor devuelto

PoQueryWatchdogTime devuelve TRUE si un IRP de alimentación habilitado para guardián está asignado actualmente a la pila de dispositivos. De lo contrario, devuelve FALSE.

Comentarios

Esta rutina permite a los controladores en modo kernel supervisar los contadores de tiempo de espera del guardián que el administrador de energía ha habilitado para realizar un seguimiento de los IRP de energía que ha emitido. Si uno o varios contadores de tiempo de espera de guardián están habilitados actualmente, la rutina devuelve TRUE y proporciona la cantidad de tiempo que permanece antes del siguiente tiempo de espera.

Por ejemplo, un controlador que experimenta retrasos al apagar un dispositivo puede llamar a esta rutina para determinar cuánto tiempo permanece antes de que el controlador deba responder a un IRP de alimentación para evitar un apagado controlado (una comprobación de errores) del sistema operativo.

El administrador de energía establece un contador de tiempo de espera del guardián cuando emite un IRP de alimentación a la pila del dispositivo. El período de tiempo de espera de este contador suele ser de varios minutos. Si un dispositivo de la pila no responde y hace que el IRP se detenga durante el período de tiempo de espera, el administrador de energía trata esta condición como un error irrecuperable e inicia un apagado controlado del sistema operativo.

Si se habilita actualmente más de un tiempo de espera del guardián de energía, la rutina establece *SecondsRemaining en la hora que permanece en el siguiente tiempo de espera.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible a partir de Windows 7.
Plataforma de destino Universal
Encabezado wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
Archivo DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL

Consulte también

DEVICE_OBJECT