estrutura PEP_POWER_CONTROL_REQUEST (pep_x.h)

A estrutura PEP_POWER_CONTROL_REQUEST contém uma solicitação de um driver para uma operação de controle de energia.

Sintaxe

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;

Membros

[in] DeviceHandle

Um valor PEPHANDLE que identifica o dispositivo. O PEP forneceu esse identificador em resposta a uma notificação de PEP_DPM_REGISTER_DEVICE anterior.

[in] PowerControlCode

Um ponteiro para um valor GUID que especifica a operação de controle de energia a ser executada. Esse é o mesmo valor que o driver solicitante fornecido como o parâmetro PowerControlCode para a rotina PoFxPowerControl .

[in] InBuffer

Um ponteiro para um buffer de entrada alocado pelo driver que contém os parâmetros de entrada para essa operação de controle de energia. Esse é o mesmo valor que o driver solicitante fornecido como o parâmetro InBuffer para a rotina PoFxPowerControl .

[in] InBufferSize

O tamanho em bytes do buffer apontado pelo InBuffer. Esse é o mesmo valor que o driver solicitante fornecido como o parâmetro InBufferSize para a rotina PoFxPowerControl .

[in] OutBuffer

Um ponteiro para um buffer de saída alocado pelo driver no qual o PEP grava os resultados dessa operação de controle de energia. Esse é o mesmo valor que o driver solicitante fornecido como o parâmetro OutBuffer para a rotina PoFxPowerControl .

[in] OutBufferSize

O tamanho em bytes do buffer apontado pelo OutBuffer.

[out] BytesReturned

O número de bytes que o PEP escreveu no buffer de saída apontado pelo OutBuffer.

[out] Status

O status da operação de controle de energia solicitada. Se a operação for bem-sucedida, o PEP definirá esse membro como STATUS_SUCCESS. Caso contrário, o PEP define esse membro como um erro apropriado status código.

Comentários

Essa estrutura é usada pela notificação de PEP_DPM_POWER_CONTROL_REQUEST . Os seis primeiros membros da estrutura contêm valores de entrada fornecidos pelo PoFx (Windows Power Management Framework ). Os dois últimos membros contêm valores que o PEP grava na estrutura em resposta a essa notificação. Além disso, o PEP grava no buffer de saída apontado pelo membro do OutBuffer .

Se o buffer de saída for muito pequeno para receber todos os dados de resultado da operação, o PEP definirá o membro Status da estrutura como STATUS_INSUFFICIENT_RESOURCES, definirá o membro BytesReturned para o tamanho necessário do buffer de saída e (normalmente) não gravará nenhum dado no buffer de saída.

O driver de um dispositivo pode chamar a rotina PoFxPowerControl para solicitar uma operação de controle de energia no dispositivo. Durante essa chamada, a PoFx delega a manipulação dessa solicitação ao PEP que possui o dispositivo. O membro do PowerControlCode da estrutura PEP_POWER_CONTROL_REQUEST contém um código de controle personalizado cujo significado é compreendido pelo driver e pelo PEP para o dispositivo.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte começando com Windows 10.
Cabeçalho pep_x.h (inclua Pep_x.h)

Confira também

PEP_DPM_POWER_CONTROL_REQUEST

PEP_DPM_REGISTER_DEVICE

PoFxPowerControl