Partager via


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.
Pour plus d’informations sur les états de faible consommation d’énergie, consultez Un appareil entre un état Low-Power.

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

Voir aussi

IWDFDevice2