Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La routine PoQueryWatchdogTime indique si le gestionnaire d’alimentation a activé un compteur de délai d’attente de surveillance pour tout IRP d’alimentation actuellement affecté à la pile d’appareils.
Syntaxe
BOOLEAN PoQueryWatchdogTime(
[in] PDEVICE_OBJECT Pdo,
[out] PULONG SecondsRemaining
);
Paramètres
[in] Pdo
Pointeur vers un objet d’appareil physique (PDO). Ce paramètre pointe vers une structure DEVICE_OBJECT qui représente un appareil physique.
[out] SecondsRemaining
Pointeur vers un emplacement dans lequel la routine écrit l’heure, en secondes, qui reste avant que le délai d’attente de l’agent de surveillance de l’alimentation suivant ne se produise.
Valeur de retour
PoQueryWatchdogTime retourne TRUE si un IRP d’alimentation compatible avec l’agent de surveillance est actuellement affecté à la pile d’appareils. Sinon, elle retourne FALSE.
Remarques
Cette routine permet aux pilotes en mode noyau de surveiller les compteurs de délai d’attente de surveillance que le gestionnaire d’alimentation a activés pour assurer le suivi des fournisseurs d’intégration d’alimentation qu’il a émis. Si un ou plusieurs compteurs de délai d’attente de surveillance sont actuellement activés, la routine retourne TRUE et fournit la durée restante avant la prochaine expiration.
Par exemple, un pilote qui subit des retards lors de l’arrêt d’un appareil peut appeler cette routine pour déterminer combien de temps reste avant que le pilote ne doit répondre à un IRP d’alimentation pour empêcher un arrêt contrôlé (une vérification de bogue) du système d’exploitation.
Le gestionnaire d’alimentation définit un compteur de délai d’attente de surveillance lorsqu’il émet un IRP d’alimentation sur la pile d’appareils. Le délai d’attente de ce compteur est généralement de plusieurs minutes. Si un appareil de la pile ne répond pas et provoque le blocage de l’IRP pendant le délai d’attente, le gestionnaire de l’alimentation traite cette condition comme une erreur irrécupérable et lance un arrêt contrôlé du système d’exploitation.
Si plusieurs délais d’attente de surveillance de l’alimentation sont actuellement activés, la routine définit *SecondsRemaining au moment de l’expiration suivante.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 7 |
plateforme cible | Universel |
d’en-tête | ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h) |
bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |