Funzione PoCreatePowerRequest (ntifs.h)

La routine PoCreatePowerRequest crea un oggetto power request.

Sintassi

NTSTATUS PoCreatePowerRequest(
  [out] PVOID                   *PowerRequest,
  [in]  PDEVICE_OBJECT          DeviceObject,
  [in]  PCOUNTED_REASON_CONTEXT Context
);

Parametri

[out] PowerRequest

Puntatore a una posizione in cui la routine scrive un puntatore all'oggetto power request appena creato. Se la chiamata non riesce, la routine scrive NULL in questa posizione.

[in] DeviceObject

Puntatore all'oggetto dispositivo del chiamante (struttura DEVICE_OBJECT ).

[in] Context

Puntatore a una struttura COUNTED_REASON_CONTEXT che descrive il motivo per cui il chiamante sta creando l'oggetto power request. Questo parametro è facoltativo e può essere impostato su NULL.

Valore restituito

PoCreatePowerRequest restituisce STATUS_SUCCESS se la chiamata ha esito positivo. Se la chiamata non riesce, i codici restituiti di errore possibili includono quanto segue:

Codice restituito Descrizione
STATUS_INVALID_PARAMETER Il parametro DeviceObject è NULL.
STATUS_INSUFFICIENT_RESOURCES Memoria insufficiente per creare un oggetto power request.

Commenti

Questa routine crea un oggetto power request. Per abilitare le richieste di alimentazione, il chiamante deve creare un oggetto power request e usarlo per tutte le chiamate alle routine PoSetPowerRequest e PoClearPowerRequest .

Un driver può usare richieste di alimentazione per eseguire l'override di determinati aspetti del comportamento di alimentazione predefinito del computer. Ad esempio, un driver per un dispositivo ricevitore TV può usare le richieste di alimentazione per impedire al risparmio energia di spaziare automaticamente lo schermo durante lunghi periodi di tempo in cui non si verifica alcuna interazione dell'utente.

Quando l'oggetto power request non è più necessario, il chiamante deve eliminare l'oggetto chiamando la routine PoDeletePowerRequest . Il driver deve eliminare l'oggetto power request prima di eliminare l'oggetto dispositivo usato per creare l'oggetto power request.

Requisiti

Requisito Valore
Client minimo supportato Windows 7
Piattaforma di destinazione Universale
Intestazione ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Vedi anche

PoClearPowerRequest

PoDeletePowerRequest

PoSetPowerRequest