Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La rutina PoStartNextPowerIrp indica al administrador de energía que el controlador está listo para controlar el siguiente IRP de alimentación. (Solo Windows Server 2003, Windows XP y Windows 2000).
Sintaxis
VOID PoStartNextPowerIrp(
[in, out] PIRP Irp
);
Parámetros
[in, out] Irp
Puntero a un IRP en el que se IRP_MJ_POWER el código de función principal.
Valor devuelto
None
Observaciones
A partir de Windows Vista, el controlador no es necesario llamar a PoStartNextPowerIrp y una llamada a esta rutina no realiza una operación de administración de energía. Sin embargo, en Windows Server 2003, Windows XP y Windows 2000, todos los controladores de una pila de dispositivos deben llamar a PoStartNextPowerIrp después de que el controlador termine con el IRP de energía anterior, si existe, y está listo para controlar el siguiente IRP de energía. Cada controlador debe llamarlo una vez para cada solicitud de IRP_MN_QUERY_POWER o IRP_MN_SET_POWER .
Aunque los IRP de energía solo se completan una vez, normalmente por el controlador de autobús de un dispositivo, cada controlador de la pila de dispositivos debe llamar a PoStartNextPowerIrp a medida que el IRP viaja hacia abajo o realiza una copia de seguridad de la pila. Incluso si un controlador produce un error en el IRP, el controlador debe llamar a PoStartNextPowerIrp para indicar al administrador de energía que está listo para controlar otro IRP de energía.
El controlador debe llamar a PoStartNextPowerIrp mientras la ubicación actual de la pila irP apunta al controlador actual. Por lo tanto, se debe llamar a esta rutina antes de IoCompleteRequest, IoSkipCurrentIrpStackLocation y PoCallDriver. Como regla general, un controlador debe llamar a PoStartNextPowerIrp desde su rutina de IoCompletion asociada al IRP o desde la rutina de devolución de llamada que pasó a PoRequestPowerIrp.
Los conductores de autobús deben llamar a PoStartNextPowerIrp antes de completar cada IRP.
Requisitos
| Requisito | Value |
|---|---|
| Cliente mínimo compatible | Disponible a partir de Windows 2000. |
| Plataforma de destino | Universal |
| Encabezado | wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h) |
| Library | NtosKrnl.lib |
| Archivo DLL | NtosKrnl.exe |
| IRQL | <=DISPATCH_LEVEL |