Функция 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. |
целевая платформа | Всеобщий |
заголовка | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | DISPATCH_LEVEL |
правил соответствия DDI | HwStorPortProhibitedDDIs(storport), IrqlDispatch(storport), IrqlDispatch(storport), IrqlDispatch(wdm) |