Méthode IWDFDevice2 ::GetSystemPowerAction (wudfddi.h)
[Avertissement : UMDF 2 est la dernière version d’UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide d’UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et la prise en charge d’UMDF 1 est limitée sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Prise en main avec UMDF.]
La méthode GetSystemPowerAction retourne l’action d’alimentation du système, le cas échéant, qui se produit actuellement pour l’ordinateur.
Syntaxe
POWER_ACTION GetSystemPowerAction();
Valeur de retour
GetSystemPowerAction retourne une valeur d’énumérateur de type POWER_ACTION. La valeur indique l’action d’alimentation du système qui se produit actuellement pour l’ordinateur. Pour plus d'informations, consultez la section Notes qui suit.
Remarques
La méthode GetSystemPowerAction permet à un pilote de déterminer si la transition d’alimentation d’un appareil se produit parce que l’appareil est inactif (ou se réveille), ou parce que l’ordinateur entier entre (ou quitte) un état de faible consommation.
Le pilote doit appeler GetSystemPowerAction uniquement à partir des fonctions de rappel d’événements appelées par l’infrastructure lorsque l’appareil entre dans un état de faible consommation ou revient à son état de fonctionnement.
La valeur renvoyée par GetSystemPowerAction dépend des situations suivantes :
- Si l’ordinateur entre dans un état de faible consommation lorsque le pilote appelle GetSystemPowerAction, la méthode retourne la raison pour laquelle l’ordinateur entre dans l’état de faible consommation. Par exemple, la méthode retourne PowerActionSleep si l’ordinateur entre dans son état de faible consommation S1, S2 ou S3.
- Si l’ordinateur revient à son état de fonctionnement (S0) à partir d’un état de faible consommation lorsque le pilote appelle GetSystemPowerAction, la méthode retourne la raison pour laquelle l’ordinateur est entré dans l’état de faible consommation. Par exemple, la méthode retourne PowerActionSleep si l’ordinateur quitte son état de faible consommation S1, S2 ou S3.
- Si l’ordinateur s’allume (après avoir été désactivé) lorsque le pilote appelle GetSystemPowerAction, la méthode retourne PowerActionNone.
- Si l’appareil entre dans un état d’inactivité à faible consommation d’énergie ou retourne à son état de fonctionnement (D0) lorsque le pilote appelle GetSystemPowerAction, alors que le reste du système reste à son état de fonctionnement (S0), la méthode retourne PowerActionNone.
- Si l’ordinateur et l’appareil sont tous deux dans leur état de fonctionnement lorsque le pilote appelle GetSystemPowerAction, la méthode retourne PowerActionNone.
Exemples
L’exemple de code suivant obtient l’interface IWDFDevice2 , puis appelle GetSystemPowerAction.
IWDFDevice2 *pDevice2 = NULL;
HRESULT hrQI = pDevice->QueryInterface(IID_PPV_ARGS(&pDevice2));
if (SUCCEEDED(hrQI))
{
POWER_ACTION powerAction = pDevice2->GetSystemPowerAction();
}
...
SAFE_RELEASE(pDevice2);
Configuration requise
Condition requise | Valeur |
---|---|
Fin de la prise en charge | Non disponible dans UMDF 2.0 et versions ultérieures. |
Plateforme cible | Desktop (Expérience utilisateur) |
Version UMDF minimale | 1,9 |
En-tête | wudfddi.h (inclure Wudfddi.h) |
DLL | WUDFx.dll |