Macro PoSetDeviceBusy (wdm.h)
La macro PoSetDeviceBusy informe le gestionnaire d’alimentation que l’appareil associé à IdlePointer est occupé.
Syntaxe
void PoSetDeviceBusy(
[in, out] IdlePointer
);
Paramètres
[in, out] IdlePointer
Spécifie un pointeur inactif non NULL qui a été précédemment retourné par PoRegisterDeviceForIdleDetection. Notez que PoRegisterDeviceForIdleDetection peut retourner un pointeur NULL . Un appelant de PoSetDeviceBusy doit vérifier que le pointeur n’est pas NULL avant de le transmettre à PoSetDeviceBusy.
Valeur de retour
None
Remarques
La routine PoSetDeviceBusyEx remplace directement la macro PoSetDeviceBusy . Si vous écrivez un nouveau code de pilote pour Windows Vista avec Service Pack 1 (SP1) et versions ultérieures de Windows, appelez PoSetDeviceBusyEx au lieu de PoSetDeviceBusy.
Un pilote utilise PoSetDeviceBusy avec PoRegisterDeviceForIdleDetection pour activer la détection d’inactivité du système pour son appareil. Si un appareil inscrit pour la détection d’inactivité devient inactif, le gestionnaire d’alimentation envoie une demande de IRP_MN_SET_POWER pour placer l’appareil dans un état de veille demandé.
PoSetDeviceBusy signale que l’appareil est occupé, afin que le gestionnaire d’alimentation puisse redémarrer son compte à rebours inactif. Si l’appareil n’est pas mis sous tension, PoSetDeviceBusy ne modifie pas son état. Autrement dit, le système n’envoie pas de demande de mise sous tension.
Un pilote doit appeler PoSetDeviceBusy sur chaque demande d’E/S.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | wdm.h (include Wdm.h) |
IRQL | N’importe quel niveau |