Fonction PoRegisterSystemState (wdm.h)
La routine PoRegisterSystemState enregistre le système comme étant occupé en raison de certaines activités.
Syntaxe
PVOID PoRegisterSystemState(
[in, out] PVOID StateHandle,
[in] EXECUTION_STATE Flags
);
Paramètres
[in, out] StateHandle
Pointeur vers une mémoire tampon fournie par l’appelant pour un handle d’état d’inscription. La taille, en octets, de la mémoire tampon est sizeof (ULONG). Si la valeur est NULL, il s’agit d’une nouvelle inscription. S’il n’est pas NULL, ce paramètre pointe vers un handle qui a été retourné par un appel précédent à PoRegisterSystemState.
[in] Flags
Indique le type d’activité, tel que spécifié par un bit OR d’une ou plusieurs des valeurs suivantes :
ES_SYSTEM_REQUIRED
Le système n’est pas inactif, quelle que soit la charge apparente.
ES_DISPLAY_REQUIRED
L’utilisation de l’affichage est requise.
ES_USER_PRESENT
Un utilisateur est présent.
ES_CONTINUOUS
Les paramètres sont continus et doivent rester en vigueur jusqu’à ce qu’ils soient explicitement modifiés.
Valeur retournée
PoRegisterSystemState retourne un handle à utiliser ultérieurement pour modifier ou annuler l’inscription de l’état de disponibilité du système. Elle retourne NULL si le handle n’a pas pu être alloué.
Remarques
PoRegisterSystemState inscrit l’état de disponibilité du système comme indiqué par les indicateurs. L’inscription persiste jusqu’à ce que l’appelant la modifie explicitement avec un autre appel à PoRegisterSystemState ou l’annule avec un appel à PoUnregisterSystemState.
Le paramètre Flags spécifie le type d’activité en cours. Les pilotes peuvent spécifier n’importe quelle combinaison d’indicateurs.
La définition de ES_CONTINUOUS rend l’état occupé persistant jusqu’à ce qu’un pilote le modifie ou l’annule explicitement en appelant PoRegisterSystemState ou PoUnregisterSystemState.
Un pilote peut définir l’état d’activité du système pour demander au gestionnaire d’alimentation d’éviter les transitions de l’état d’alimentation système hors de l’état de fonctionnement du système (S0) pendant que l’activité du pilote se produit. Notez, toutefois, que dans certaines circonstances (par exemple, une batterie extrêmement faible), le gestionnaire d’alimentation peut remplacer cette demande et mettre le système en veille de toute façon.
Pour définir l’état d’alimentation du système, appelez PoSetSystemState.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible à partir de Windows 2000. |
Plateforme cible | Universal |
En-tête | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Bibliothèque | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=APC_LEVEL |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour