Condividi tramite


Chiamata di PoStartNextPowerIrp da un proprietario di Criteri di risparmio energia dispositivo

A partire da Windows Vista, la chiamata a PoStartNextPowerIrp non è necessaria e la chiamata a questa routine non esegue alcuna operazione di risparmio energia. Tuttavia, in Windows Server 2003, Windows XP e Windows 2000, un driver di funzione proprietario dei criteri di alimentazione del dispositivo deve chiamare PoStartNextPowerIrp una volta per ogni IRP_MN_QUERY_POWER o IRP_MN_SET_POWER richiesta ricevuta dal driver. Quando si verifica la chiamata dipende dal tipo di richiesta e dal fatto che il driver avrà esito negativo o esito positivo della richiesta, come illustrato nella tabella seguente.

Tipo di richiesta Se il driver riesce alla richiesta, viene eseguita la chiamata: Se il driver non riesce la richiesta, viene eseguita la chiamata:

IRP_MN_QUERY_POWER (stato di alimentazione del dispositivo)

In una routine IoCompletion , immediatamente prima di tornare.

Nella routine DispatchPower prima di chiamare IoCompleteRequest.

IRP_MN_QUERY_POWER (stato di alimentazione del sistema)

Nella routine di callback PoRequestPowerIrp per l'IRP del dispositivo correlato, immediatamente prima di completare l'IRP di sistema.

Nella routine DispatchPower prima di chiamare IoCompleteRequest.

IRP_MN_SET_POWER (stato di alimentazione del dispositivo)

In una routine IoCompletion , immediatamente prima di tornare.

Non consentiti.

IRP_MN_SET_POWER (stato di alimentazione del sistema)

Nella routine di callback PoRequestPowerIrp per l'IRP del dispositivo correlato, immediatamente prima di completare l'IRP di sistema.

Non consentiti.