Condividi tramite


Funzione NtPowerInformation (wdm.h)

La routine NtPowerInformation imposta o recupera le informazioni sull'alimentazione del sistema.

Sintassi

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

Parametri

[in] InformationLevel

Specifica il livello di informazioni richiesto, che indica le informazioni di alimentazione specifiche da impostare o recuperare. Attualmente, l'unico valore POWER_INFORMATION_LEVEL supportato è PlatformInformation.

Valore Descrizione
PlatformInformation Le informazioni rappresentano le funzionalità di alimentazione attualmente supportate del sistema. Le informazioni possono cambiare quando vengono installati i driver. Ad esempio, l'installazione dei driver di dispositivo legacy che non supportano la gestione energia potrebbe modificare le funzionalità del sistema.

[in, optional] InputBuffer

Puntatore a un buffer di input allocato dal chiamante. Questo parametro deve essere NULL, in caso contrario ERROR_INVALID_PARAMETER viene restituito.

[in] InputBufferLength

Dimensioni, in byte, del buffer in InputBuffer. Il parametro deve essere impostato su zero.

[out, optional] OutputBuffer

Puntatore a un buffer di output. Il tipo di dati di questo buffer dipende dal livello di informazioni richiesto nel parametro InformationLevel . Per il livello PlatformInformation , l'unico valore attualmente supportato, il parametro OutputBuffer è obbligatorio e deve essere del tipo di POWER_PLATFORM_INFORMATION .

[in] OutputBufferLength

Dimensioni, in byte, del buffer di output. A seconda del livello di informazioni richiesto, il buffer può essere ridimensionato in modo variabile. PlatformInformation, l'unico valore attualmente supportato, richiede un buffer che corrisponde alle dimensioni di una struttura POWER_PLATFORM_INFORMATION .

Valore restituito

Restituisce STATUS_SUCCESS se la chiamata ha esito positivo. Se la chiamata ha esito negativo, i codici di errore possibili includono quanto segue:

Codice restituito Descrizione
STATUS_BUFFER_TOO_SMALL Il buffer di output è di dimensioni insufficienti per contenere i dati restituiti.
STATUS_INVALID_PARAMETER Il livello di informazioni PlatformInformation , che è l'unico valore attualmente supportato, non richiede alcun buffer di input e deve contenere un buffer di output. Il chiamante ha fornito un buffer di input o nessun buffer di output.
STATUS_ACCESS_DENIED Il chiamante aveva diritti di accesso insufficienti per eseguire l'azione richiesta.

Commenti

NtPowerInformation e ZwPowerInformation sono due versioni della stessa routine di Windows Native System Services.

Per le chiamate dai driver in modalità kernel, le versioni NtXxx e ZwXxx di una routine di Windows Native System Services possono comportarsi in modo diverso nel modo in cui gestiscono e interpretano i parametri di input. Per altre informazioni sulla relazione tra le versioni NtXxx e ZwXxx di una routine, vedere Uso di nt e zw versioni delle routine di Servizi di sistema nativo.

Esempio

In questo esempio viene illustrata una chiamata di funzione valida.

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

Requisiti

Requisito Valore
Client minimo supportato Windows 8
Server minimo supportato Windows Server 2012
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntpoapi.h)
Libreria Ntoskrnl.lib
DLL Ntoskrnl.lib
IRQL PASSIVE_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDIs, PowerIrpDDis

Vedi anche

POWER_PLATFORM_INFORMATION

Uso di nt e zw versioni delle routine di Servizi di sistema nativo