Fungsi KeRemoveDeviceQueue (wdm.h)
Rutinitas KeRemoveDeviceQueue menghapus entri dari kepala antrean perangkat tertentu.
Sintaks
PKDEVICE_QUEUE_ENTRY KeRemoveDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue
);
Parameter
[in, out] DeviceQueue
Penunjuk ke objek antrean perangkat yang diinisialisasi tempat pemanggil menyediakan penyimpanan.
Nilai kembali
Jika antrean perangkat kosong tetapi diatur ke status sibuk, KeRemoveDeviceQueue mengembalikan NULL.
Keterangan
Kunci spin antrean perangkat yang ditentukan diperoleh dan status antrean perangkat diperiksa. Jika antrean perangkat diatur ke status sibuk dan IRP diantrekan, ini rutin menghapus antrean entri dan mengembalikan pointer ke IRP. Panggilan ke KeRemoveDeviceQueue saat objek antrean perangkat diatur ke status sibuk tetapi tidak ada IRP yang diantrekan menyebabkan perubahan status menjadi tidak sibuk. Kunci putar antrean perangkat yang ditentukan dilepaskan.
Ini adalah kesalahan untuk memanggil KeRemoveDeviceQueue ketika objek antrean perangkat diatur ke status tidak sibuk.
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 |
Aturan kepatuhan DDI | HwStorPortProhibitedDDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm) |