KeRemoveDeviceQueue 函式 (wdm.h)
KeRemoveDeviceQueue 例程會從指定裝置佇列的前端移除專案。
語法
PKDEVICE_QUEUE_ENTRY KeRemoveDeviceQueue(
[in, out] PKDEVICE_QUEUE DeviceQueue
);
參數
[in, out] DeviceQueue
呼叫端提供記憶體之初始化裝置佇列物件的指標。
傳回值
如果裝置佇列是空的,但設定為忙碌狀態,KeRemoveDeviceQueue 會 NULL傳回 。
言論
取得指定的裝置佇列微調鎖定,並檢查裝置佇列的狀態。 如果裝置佇列設定為忙碌狀態且 IRP 已排入佇列,此例程會清除專案佇列,並傳回 IRP 的指標。 當裝置佇列物件設定為忙碌狀態,但不會將 IRP 排入佇列時,呼叫 KeRemoveDeviceQueue 會導致狀態變更為非忙碌狀態。 指定的裝置佇列微調鎖定已釋放。
當裝置佇列物件設定為非忙碌狀態時,呼叫 KeRemoveDeviceQueue 是錯誤。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平臺 | 普遍 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDIS(storport)、IrqlDispatch(storport)、IrqlDispatch(storport)、IrqlDispatch(wdm) |