PEP_POWER_CONTROL_REQUEST-Struktur (pep_x.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 derselbe 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 derselbe 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 in InBuffer verwiesen wird. Dies ist derselbe Wert, den der anfordernde Treiber als InBufferSize-Parameter für die PoFxPowerControl-Routine bereitgestellt hat.

[in] OutBuffer

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

[in] OutBufferSize

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

[out] BytesReturned

Die Anzahl der Bytes, die der PEP in den Ausgabepuffer geschrieben hat, auf den outBuffer verweist.

[out] Status

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

Hinweise

Diese Struktur wird von der PEP_DPM_POWER_CONTROL_REQUEST Benachrichtigung verwendet. Die ersten sechs Member 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 der OutBuffer-Member verweist.

Wenn der Ausgabepuffer zu klein ist, um alle Ergebnisdaten aus dem Vorgang zu empfangen, legt PEP den Status-Member 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 den PEP, der besitzer des Geräts ist. 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) Unterstützt ab Windows 10.
Kopfzeile pep_x.h (Pep_x.h einschließen)

Weitere Informationen

PEP_DPM_POWER_CONTROL_REQUEST

PEP_DPM_REGISTER_DEVICE

PoFxPowerControl