structure PEP_POWER_CONTROL_REQUEST (pepfx.h)

La structure PEP_POWER_CONTROL_REQUEST contient une demande d’un pilote pour une opération de contrôle d’alimentation.

Syntaxe

typedef struct _PEP_POWER_CONTROL_REQUEST {
  [in]  PEPHANDLE DeviceHandle;
  [in]  LPCGUID   PowerControlCode;
  [in]  PVOID     InBuffer;
  [in]  SIZE_T    InBufferSize;
  [in]  PVOID     OutBuffer;
  [in]  SIZE_T    OutBufferSize;
  [out] SIZE_T    BytesReturned;
  [out] NTSTATUS  Status;
} PEP_POWER_CONTROL_REQUEST, *PPEP_POWER_CONTROL_REQUEST;

Membres

[in] DeviceHandle

Valeur PEPHANDLE qui identifie l’appareil. Le PEP a fourni ce handle en réponse à une notification PEP_DPM_REGISTER_DEVICE précédente.

[in] PowerControlCode

Pointeur vers une valeur GUID qui spécifie l’opération de contrôle d’alimentation à effectuer. Il s’agit de la même valeur que celle fournie par le pilote demandeur en tant que paramètre PowerControlCode à la routine PoFxPowerControl .

[in] InBuffer

Pointeur vers une mémoire tampon d’entrée allouée au pilote qui contient les paramètres d’entrée pour cette opération de contrôle d’alimentation. Il s’agit de la même valeur que celle fournie par le pilote demandeur en tant que paramètre InBuffer à la routine PoFxPowerControl .

[in] InBufferSize

Taille en octets de la mémoire tampon pointée vers InBuffer. Il s’agit de la même valeur que celle fournie par le pilote demandeur en tant que paramètre InBufferSize à la routine PoFxPowerControl .

[in] OutBuffer

Pointeur vers une mémoire tampon de sortie allouée au pilote dans laquelle le PEP écrit les résultats de cette opération de contrôle d’alimentation. Il s’agit de la même valeur que celle fournie par le pilote demandeur en tant que paramètre OutBuffer à la routine PoFxPowerControl .

[in] OutBufferSize

Taille en octets de la mémoire tampon pointée vers OutBuffer.

[out] BytesReturned

Nombre d’octets que le PEP a écrit dans la mémoire tampon de sortie pointée par OutBuffer.

[out] Status

Status de l’opération de contrôle d’alimentation demandée. Si l’opération réussit, le PEP définit ce membre sur STATUS_SUCCESS. Sinon, le PEP définit ce membre sur une erreur appropriée status code.

Remarques

Cette structure est utilisée par la notification PEP_DPM_POWER_CONTROL_REQUEST . Les six premiers membres de la structure contiennent des valeurs d’entrée fournies par l’infrastructure de gestion de l’alimentation Windows (PoFx). Les deux derniers membres contiennent des valeurs que le PEP écrit dans la structure en réponse à cette notification. En outre, le PEP écrit dans la mémoire tampon de sortie pointée par le membre OutBuffer .

Si la mémoire tampon de sortie est trop petite pour recevoir toutes les données de résultat de l’opération, le PEP définit le membre Status de la structure sur STATUS_INSUFFICIENT_RESOURCES, définit le membre BytesReturned sur la taille requise de la mémoire tampon de sortie et (généralement) n’écrit aucune donnée dans la mémoire tampon de sortie.

Le pilote d’un appareil peut appeler la routine PoFxPowerControl pour demander une opération de contrôle d’alimentation sur l’appareil. Pendant cet appel, PoFx délègue la gestion de cette demande au PEP propriétaire de l’appareil. Le membre PowerControlCode de la structure PEP_POWER_CONTROL_REQUEST contient un code de contrôle personnalisé dont la signification est comprise à la fois par le pilote et le PEP de l’appareil.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 10.
En-tête pepfx.h (include Pep_x.h)

Voir aussi

PEP_DPM_POWER_CONTROL_REQUEST

PEP_DPM_REGISTER_DEVICE

PoFxPowerControl