Fungsi PoStartNextPowerIrp (wdm.h)

Rutinitas PoStartNextPowerIrp menandakan manajer daya bahwa driver siap untuk menangani IRP daya berikutnya. (Hanya Windows Server 2003, Windows XP, dan Windows 2000.)

Sintaks

void PoStartNextPowerIrp(
  [in, out] PIRP Irp
);

Parameter

[in, out] Irp

Pointer ke IRP di mana kode fungsi utama IRP_MJ_POWER.

Nilai kembali

Tidak ada

Keterangan

Dimulai dengan Windows Vista, driver tidak diperlukan untuk memanggil PoStartNextPowerIrp dan panggilan ke rutinitas ini tidak melakukan operasi manajemen daya. Namun, pada Windows Server 2003, Windows XP, dan Windows 2000, PoStartNextPowerIrp harus dipanggil oleh setiap driver dalam tumpukan perangkat setelah driver selesai dengan IRP daya sebelumnya, jika ada, dan siap untuk menangani IRP daya berikutnya. Ini harus dipanggil sekali oleh setiap driver untuk setiap permintaan IRP_MN_QUERY_POWER atau IRP_MN_SET_POWER .

Meskipun runtime integrasi daya hanya diselesaikan sekali, biasanya oleh driver bus untuk perangkat, setiap driver di tumpukan perangkat harus memanggil PoStartNextPowerIrp saat IRP melakukan perjalanan ke bawah atau mencadangkan tumpukan. Bahkan jika driver gagal IRP, driver harus tetap memanggil PoStartNextPowerIrp untuk memberi sinyal kepada manajer daya bahwa ia siap untuk menangani IRP daya lain.

Driver harus memanggil PoStartNextPowerIrp sementara lokasi tumpukan IRP saat ini menunjuk ke driver saat ini. Oleh karena itu, rutinitas ini harus dipanggil sebelum IoCompleteRequest, IoSkipCurrentIrpStackLocation, dan PoCallDriver. Sebagai aturan umum, driver harus memanggil PoStartNextPowerIrp dari rutinitas IoCompletion yang terkait dengan IRP atau dari rutinitas panggilan balik yang diteruskan ke PoRequestPowerIrp.

Pengemudi bus harus memanggil PoStartNextPowerIrp sebelum menyelesaikan setiap IRP.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 2000.
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=DISPATCH_LEVEL

Lihat juga

IRP

IRP_MJ_POWER

IRP_MN_QUERY_POWER

IRP_MN_SET_POWER

IoCompleteRequest

IoSkipCurrentIrpStackLocation

PoCallDriver

PoRequestPowerIrp