Freigeben über


PEP_POWER_CONTROL_REQUEST-Struktur (pepfx.h)

Die PEP_POWER_CONTROL_REQUEST-Struktur enthält eine Anforderung eines Treibers für einen Energiesteuerungsvorgang.

Syntax

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;

Member

[in] DeviceHandle

Ein PEPHANDLE-Wert, der das Gerät identifiziert. Das PEP hat dieses Handle als Reaktion auf eine vorherige PEP_DPM_REGISTER_DEVICE Benachrichtigung bereitgestellt.

[in] PowerControlCode

Ein Zeiger auf einen GUID-Wert, der den auszuführenden Energiesteuerungsvorgang angibt. Dies ist der gleiche Wert, den der anfordernde Treiber als PowerControlCode-Parameter für die PoFxPowerControl-Routine bereitgestellt hat.

[in] InBuffer

Ein Zeiger auf einen vom Treiber zugewiesenen Eingabepuffer, der die Eingabeparameter für diesen Energiesteuerungsvorgang enthält. Dies ist der gleiche Wert, den der anfordernde Treiber als InBuffer-Parameter für die PoFxPowerControl-Routine bereitgestellt hat.

[in] InBufferSize

Die Größe des Puffers in Bytes, auf den InBuffer verweist. Dies ist der gleiche Wert, den der anfordernde Treiber als InBufferSize-Parameter für die PoFxPowerControl-Routine angegeben hat.

[in] OutBuffer

Ein Zeiger auf einen vom Treiber zugewiesenen Ausgabepuffer, in den der PEP die Ergebnisse dieses Energiesteuerungsvorgangs schreibt. Dies ist der gleiche Wert, den der anfordernde Treiber als OutBuffer-Parameter für die PoFxPowerControl-Routine bereitgestellt hat.

[in] OutBufferSize

Die Größe des Puffers in Bytes, auf den outBuffer verweist.

[out] BytesReturned

Die Anzahl der Bytes, die vom PEP in den Ausgabepuffer geschrieben wurden, auf den OutBuffer verweist.

[out] Status

Die status des angeforderten Energiesteuerungsvorgangs. Wenn der Vorgang erfolgreich ist, legt pep diesen Member auf STATUS_SUCCESS fest. Andernfalls legt pep diesen Member auf einen entsprechenden Fehler status Code fest.

Hinweise

Diese Struktur wird von der PEP_DPM_POWER_CONTROL_REQUEST Benachrichtigung verwendet. Die ersten sechs Elemente der Struktur enthalten Eingabewerte, die vom Windows Power Management Framework (PoFx) bereitgestellt werden. Die letzten beiden Member enthalten Werte, die pep als Reaktion auf diese Benachrichtigung in die Struktur schreibt. Darüber hinaus schreibt pep in den Ausgabepuffer, auf den das OutBuffer-Element verweist.

Wenn der Ausgabepuffer zu klein ist, um alle Ergebnisdaten aus dem Vorgang zu empfangen, legt pep das Statuselement der Struktur auf STATUS_INSUFFICIENT_RESOURCES fest, legt den BytesReturned-Member auf die erforderliche Größe des Ausgabepuffers fest und schreibt (in der Regel) keine Daten in den Ausgabepuffer.

Der Treiber für ein Gerät kann die PoFxPowerControl-Routine aufrufen, um einen Energiesteuerungsvorgang auf dem Gerät anzufordern. Während dieses Aufrufs delegiert PoFx die Behandlung dieser Anforderung an die PEP, die das Gerät besitzt. Das PowerControlCode-Element der PEP_POWER_CONTROL_REQUEST-Struktur enthält einen benutzerdefinierten Steuerelementcode, dessen Bedeutung sowohl vom Treiber als auch vom PEP für das Gerät verstanden wird.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Wird ab Windows 10 unterstützt.
Kopfzeile pepfx.h (einschließlich Pep_x.h)

Weitere Informationen

PEP_DPM_POWER_CONTROL_REQUEST

PEP_DPM_REGISTER_DEVICE

PoFxPowerControl