Partager via


DevicePowerEnumDevices, fonction (powrprof.h)

Énumère les appareils sur le système qui répondent aux critères spécifiés.

Syntaxe

BOOLEAN DevicePowerEnumDevices(
  [in]            ULONG  QueryIndex,
  [in]            ULONG  QueryInterpretationFlags,
  [in]            ULONG  QueryFlags,
  [out, optional] PBYTE  pReturnBuffer,
  [in, out]       PULONG pBufferSize
);

Paramètres

[in] QueryIndex

Index de l’appareil demandé. Pour les appels initiaux, cette valeur doit être égale à zéro.

[in] QueryInterpretationFlags

Critères appliqués aux résultats de la recherche.

Valeur Signification
DEVICEPOWER_HARDWAREID
0x80000000
Retourne une chaîne d’ID matériel plutôt qu’un nom d’appareil convivial.
DEVICEPOWER_FILTER_DEVICES_PRESENT
0x20000000
Ignorez les appareils qui ne sont pas présents dans le système.
DEVICEPOWER_AND_OPERATION
0x40000000
Effectuez une opération AND sur QueryFlags.
DEVICEPOWER_FILTER_WAKEENABLED
0x08000000
Vérifiez si l’appareil est actuellement activé pour sortir le système d’un état de veille.
DEVICEPOWER_FILTER_ON_NAME
0x02000000
Recherchez un appareil dont le nom correspond à la chaîne transmise dans pReturnBuffer et case activée ses fonctionnalités par rapport à QueryFlags.

[in] QueryFlags

Critères de requête.

Valeur Signification
PDCAP_D0_SUPPORTED
0x00000001
L’appareil prend en charge l’état d’alimentation du système D0.
PDCAP_D1_SUPPORTED
0x00000002
L’appareil prend en charge l’état d’alimentation du système D1.
PDCAP_D2_SUPPORTED
0x00000004
L’appareil prend en charge l’état d’alimentation du système D2.
PDCAP_D3_SUPPORTED
0x00000008
L’appareil prend en charge l’état d’alimentation du système D3.
PDCAP_S0_SUPPORTED
0x00010000
L’appareil prend en charge l’état de veille du système S0.
PDCAP_S1_SUPPORTED
0x00020000
L’appareil prend en charge l’état de veille du système S1.
PDCAP_S2_SUPPORTED
0x00040000
L’appareil prend en charge l’état de veille du système S2.
PDCAP_S3_SUPPORTED
0x00080000
L’appareil prend en charge l’état de veille du système S3.
PDCAP_S4_SUPPORTED
0x01000000
L’appareil prend en charge l’état de veille du système S4.
PDCAP_S5_SUPPORTED
0x02000000
L’appareil prend en charge l’état de veille du système S5.
PDCAP_WAKE_FROM_D0_SUPPORTED
0x00000010
L’appareil prend en charge la sortie de l’état d’alimentation du système D0.
PDCAP_WAKE_FROM_D1_SUPPORTED
0x00000020
L’appareil prend en charge la sortie de l’état d’alimentation du système D1.
PDCAP_WAKE_FROM_D2_SUPPORTED
0x00000040
L’appareil prend en charge la sortie de l’état d’alimentation du système D2.
PDCAP_WAKE_FROM_D3_SUPPORTED
0x00000080
L’appareil prend en charge la sortie de l’état d’alimentation du système D3.
PDCAP_WAKE_FROM_S0_SUPPORTED
0x00100000
L’appareil prend en charge la sortie de l’état de veille du système S0.
PDCAP_WAKE_FROM_S1_SUPPORTED
0x00200000
L’appareil prend en charge la sortie de l’état de veille du système S1.
PDCAP_WAKE_FROM_S2_SUPPORTED
0x00400000
L’appareil prend en charge la sortie de l’état de veille du système S2.
PDCAP_WAKE_FROM_S3_SUPPORTED
0x00800000
L’appareil prend en charge la sortie de l’état de veille du système S3.
PDCAP_WARM_EJECT_SUPPORTED
0x00000100
L’appareil prend en charge l’éjection à chaud.

[out, optional] pReturnBuffer

Pointeur vers une mémoire tampon qui reçoit les informations demandées.

[in, out] pBufferSize

Taille, en octets, de la mémoire tampon de retour.

Note Si pReturnBuffer a la valeur NULL, pBufferSize est rempli avec la taille nécessaire pour retourner les données.
 

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Notes

Les valeurs du paramètre QueryFlags peuvent être combinées pour rechercher des appareils qui prennent en charge au moins deux critères. Par exemple ; si PDCAP_D3_SUPPORTED | PDCAP_D1_SUPPORTED est passé en tant que paramètre QueryFlags , la fonction interroge les appareils qui prennent en charge D3 ou D1.

QueryFlags peut également être combiné avec QueryInterpretationFlags défini sur DEVICEPOWER_AND_OPERATION pour produire une requête d’appareils qui prennent en charge tous les critères demandés. Par exemple ; si PDCAP_D3_SUPPORTED | PDCAP_D1_SUPPORTED est passé en tant que paramètre QueryFlags et DEVICEPOWER_AND_OPERATION en tant que paramètre QueryInterpretationFlags , la fonction interroge les appareils qui prennent en charge D3 et D1.

Exemples

Pour obtenir un exemple qui utilise cette fonction, consultez Utilisation de l’API Device Power.

Spécifications

   
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête powrprof.h
Bibliothèque PowrProf.lib
DLL PowrProf.dll

Voir aussi

Gestion de l’alimentation des appareils