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.
[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 |
---|---|
|
Der Ausgabepuffer weist eine unzureichende Größe auf, um die zurückgegebenen Daten zu enthalten. |
|
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. |
|
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
Verwenden von Nt- und Zw-Versionen der systemeigenen Systemdienste-Routinen