KeRemoveByKeyDeviceQueue 函式 (wdm.h)

KeRemoveByKeyDeviceQueue 例程會從指定的裝置佇列中移除根據排序索引鍵值選取的專案。

語法

PKDEVICE_QUEUE_ENTRY KeRemoveByKeyDeviceQueue(
  [in, out] PKDEVICE_QUEUE DeviceQueue,
  [in]      ULONG          SortKey
);

參數

[in, out] DeviceQueue

呼叫端為其提供記憶體之初始化裝置佇列物件的指標。

[in] SortKey

指定搜尋 DeviceQueue 時要使用的金鑰。

傳回值

KeRemoveByKeyDeviceQueue 會傳回已移除的裝置佇列專案;如果佇列是空的,則會傳回 NULL

備註

此例程會搜尋裝置佇列中值大於或等於 SortKey 的第一個專案。 找到此項目之後,此例程會從裝置佇列中移除專案,並傳回它。 如果找不到這類專案,則會傳回佇列中的第一個專案。 如果裝置佇列是空的,則會將裝置設定為不忙碌狀態,並傳回 NULL 指標。

當裝置佇列物件設定為不忙碌狀態時,呼叫 KeRemoveByKeyDeviceQueue 是錯誤。

規格需求

需求
最低支援的用戶端 從 Windows 2000 開始提供。
目標平台 Universal
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL DISPATCH_LEVEL
DDI 合規性規則 HwStorPortProhibitedDDIs (storport) IrqlDispatch (storport) 、IrqlDispatch (storport) 、 IrqlDispatch (wdm)

另請參閱

KeInitializeDeviceQueue

KeInsertByKeyDeviceQueue

KeInsertDeviceQueue

KeRemoveDeviceQueue

KeRemoveEntryDeviceQueue