필터 드라이버에서 PoStartNextPowerIrp 호출
Windows Vista부터 PoStartNextPowerIrp 를 호출할 필요가 없으며 이 루틴을 호출하면 전원 관리 작업이 수행되지 않습니다. 그러나 Windows Server 2003, Windows XP 및 Windows 2000에서 필터 드라이버는 드라이버가 수신하는 모든 IRP_MN_QUERY_POWER 또는 IRP_MN_SET_POWER 요청에 대해 PoStartNextPowerIrp를 한 번 호출해야 합니다. 호출이 발생하는 경우는 다음 표와 같이 요청 유형 및 드라이버가 요청에 실패할지 또는 성공하는지에 따라 달라집니다.
요청 유형 | 드라이버가 요청에 성공하면 호출이 발생합니다. | 드라이버가 요청에 실패하면 호출이 발생합니다. |
---|---|---|
IRP_MN_QUERY_POWER (디바이스 전원 상태) |
반환 직전 의 IoCompletion 루틴에서 |
|
IRP_MN_QUERY_POWER (시스템 전원 상태) |
DispatchPower 루틴에서 잠금 제거를 획득한 후 IRP 스택 위치를 설정하기 전에. |
|
IRP_MN_SET_POWER (디바이스 전원 상태) |
반환 직전 의 IoCompletion 루틴에서 |
허용되지 않습니다. |
IRP_MN_SET_POWER (시스템 전원 상태) |
DispatchPower 루틴에서 잠금 제거를 획득한 후 IRP 스택 위치를 설정하기 전에. |
허용되지 않습니다. |