Bagikan melalui


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)

Lihat juga

KeInitializeDeviceQueue

KeInsertByKeyDeviceQueue

KeInsertDeviceQueue

KeRemoveByKeyDeviceQueue

KeRemoveEntryDeviceQueue