Partager via


IWDFDevice2 ::GetSystemPowerAction, méthode (wudfddi.h)

[Avertissement : UMDF 2 est la dernière version de UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide de UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et il existe une prise en charge limitée de UMDF 1 sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Bien démarrer avec UMDF.]

La méthode GetSystemPowerAction retourne l’action d’alimentation 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 POWER_ACTION-typé. La valeur indique l’action d’alimentation système qui se produit actuellement pour l’ordinateur. Pour plus d’informations, consultez la section Remarques suivante.

Remarques

La méthode GetSystemPowerAction permet à un pilote de déterminer si la transition de l’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 alimentation.

Le pilote doit appeler GetSystemPowerAction uniquement à partir des fonctions de rappel d’événements que l’infrastructure appelle lorsque l’appareil est entrer un état de faible puissance ou revenir à son état de fonctionnement.

La valeur qui GetSystemPowerAction retourne dépend des situations suivantes :

  • Si l’ordinateur entre dans un état à faible alimentation lorsque le pilote appelle GetSystemPowerAction, la méthode retourne la raison pour laquelle l’ordinateur entre dans l’état de faible alimentation. Par exemple, la méthode retourne PowerActionSleep si l’ordinateur entre son état S1, S2 ou S3 à faible alimentation.
  • Si l’ordinateur revient à son état de fonctionnement (S0) à partir d’un état à faible alimentation lorsque le pilote appelle GetSystemPowerAction, la méthode retourne la raison pour laquelle l’ordinateur a entré l’état de faible alimentation. Par exemple, la méthode retourne PowerActionSleep si l’ordinateur quitte son état S1, S2 ou S3 à faible alimentation.
  • Si l’ordinateur est en cours d’alimentation (après avoir été désactivé) lorsque le pilote appelle GetSystemPowerAction, la méthode retourne PowerActionNone.
  • Si l’appareil entre un état d’inactivité à faible alimentation ou retourne à son état de fonctionnement (D0) lorsque le pilote appelle GetSystemPowerAction, tandis que le reste du système reste à son état de travail (S0), la méthode retourne PowerActionNone.
  • Si l’ordinateur et l’appareil sont tous les deux dans leurs états de travail lorsque le pilote appelle GetSystemPowerAction, la méthode retourne PowerActionNone.
Pour plus d’informations sur les états à faible alimentation, consultez Un appareil entre un Low-Power state.

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);

Exigences

Exigence Valeur
fin du support Indisponible dans UMDF 2.0 et versions ultérieures.
plateforme cible Bureau
version minimale de UMDF 1.9
d’en-tête wudfddi.h (include Wudfddi.h)
DLL WUDFx.dll

Voir aussi

IWDFDevice2