Freigeben über


NtPowerInformation-Funktion (ntpoapi.h)

Die ZwPowerInformation Routinesätze oder Ruft Systemleistungsinformationen ab.

Syntax

__kernel_entry NTSYSCALLAPI NTSTATUS NtPowerInformation(
  [in]            POWER_INFORMATION_LEVEL InformationLevel,
  [in, optional]  PVOID                   InputBuffer,
  [in]            ULONG                   InputBufferLength,
  [out, optional] PVOID                   OutputBuffer,
  [in]            ULONG                   OutputBufferLength
);

Parameter

[in] InformationLevel

Gibt die angeforderte Informationsstufe an, die die spezifischen Energieinformationen angibt, die festgelegt oder abgerufen werden sollen. Derzeit wird der einzige unterstützte POWER_INFORMATION_LEVEL Wert PlatformInformation.

Wert Bedeutung
PlatformInformation-
Informationen stellen die derzeit unterstützten Leistungsfunktionen des Systems dar. Informationen können sich ändern, wenn Treiber installiert werden. Beispielsweise kann die Installation von älteren Gerätetreibern, die die Energieverwaltung nicht unterstützen, die Funktionen des Systems ändern.

[in, optional] InputBuffer

Zeiger auf einen vom Aufrufer zugewiesenen Eingabepuffer. Dieser Parameter muss NULL-sein, andernfalls wird ERROR_INVALID_PARAMETER zurückgegeben.

[in] InputBufferLength

Größe des Puffers in Bytes bei InputBuffer-. Der Parameter muss auf Null festgelegt werden.

[out, optional] OutputBuffer

Ein Zeiger auf einen Ausgabepuffer. Der Datentyp dieses Puffers hängt von der im InformationLevel Parameter angeforderten Informationsebene ab. Für die PlatformInformation--Ebene ist der einzige derzeit unterstützte Wert erforderlich, der OutputBuffer Parameter ist erforderlich und sollte vom POWER_PLATFORM_INFORMATION Typ sein.

[in] OutputBufferLength

Größe des Ausgabepuffers in Bytes. Je nach angeforderter Informationsstufe kann der Puffer variabel angepasst werden. PlatformInformation, der einzige derzeit unterstützte Wert, erfordert einen Puffer, der die Größe einer POWER_PLATFORM_INFORMATION Struktur darstellt.

Rückgabewert

Gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Wenn der Aufruf fehlschlägt, umfassen mögliche Fehlercodes Folgendes:

Rückgabecode Beschreibung
STATUS_BUFFER_TOO_SMALL
Der Ausgabepuffer weist eine unzureichende Größe auf, um die zurückgegebenen Daten zu enthalten.
STATUS_INVALID_PARAMETER
Die PlatformInformation Informationsstufe, die der einzige derzeit unterstützte Wert ist, erfordert keinen Eingabepuffer und muss einen Ausgabepuffer enthalten. Der Aufrufer hat entweder einen Eingabepuffer oder keinen Ausgabepuffer bereitgestellt.
STATUS_ACCESS_DENIED
Der Aufrufer verfügte über unzureichende Zugriffsrechte, um die angeforderte Aktion auszuführen.

Bemerkungen

NtPowerInformation- und ZwPowerInformation- sind zwei Versionen derselben Windows Native System Services-Routine.

Bei Aufrufen von Kernelmodustreibern können sich die NtXxx und ZwXxx- Versionen einer Windows Native System Services-Routine anders verhalten, wie sie Eingabeparameter behandeln und interpretieren. Weitere Informationen zur Beziehung zwischen den NtXxx und ZwXxx- Versionen einer Routine finden Sie unter Using Nt and Zw Versions of the Native System Services Routines.

Beispiele

In diesem Beispiel wird ein gültiger Funktionsaufruf veranschaulicht.

POWER_PLATFORM_INFORMATION PlatformInfo = {0};
NTSTATUS Result = NtPowerInformation(PlatformInformation, NULL, 0, &PlatformInfo, sizeof(PlatformInfo));

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8
mindestens unterstützte Server- Windows Server 2012
Zielplattform- Universal
Header- ntpoapi.h (include Wdm.h, Ntddk.h, Ntpoapi.h)
Library Ntoskrnl.lib
DLL- Ntoskrnl.lib
IRQL- PASSIVE_LEVEL
DDI-Complianceregeln HwStorPortProhibitedDIs, PowerIrpDDis

Siehe auch

POWER_PLATFORM_INFORMATION

Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienste-Routinen