Функция KeRemoveQueueDpc (wdm.h)

Подпрограмма KeRemoveQueueDpc удаляет указанный объект DPC из системной очереди DPC.

Синтаксис

BOOLEAN KeRemoveQueueDpc(
  [in, out] PRKDPC Dpc
);

Параметры

[in, out] Dpc

Указатель на инициализированный объект DPC, который был помещен в очередь при предыдущем вызове подпрограммы KeInsertQueueDpc .

Возвращаемое значение

KeRemoveQueueDpc возвращает значение TRUE , если объект DPC находится в очереди DPC. Если указанный объект DPC в настоящее время отсутствует в очереди DPC, операция не выполняется и возвращается значение FALSE .

Комментарии

Если указанный объект DPC в настоящее время поставлен в очередь, он удаляется из очереди, отменяя вызов связанной подпрограммы DPC.

Начиная с Windows Vista с пакетом обновления 1 (SP1) и Windows Server 2008 возвращаемое значение TRUE всегда означает, что KeRemoveQueueDpc успешно удалил объект DPC из очереди DPC перед запуском подпрограммы DPC. В более ранних версиях Windows подпрограмма DPC может иногда выполняться, даже если keRemoveQueueDpc возвращает значение TRUE. В этих более ранних версиях Windows драйверы, которые не допускают неоднозначности в возвращаемом значении TRUE , должны одинаково обрабатывать возвращаемые значения TRUE и FALSE .

Требования

Требование Значение
Минимальная версия клиента Доступно начиная с Windows 2000.
Целевая платформа Универсальное
Верхняя часть wdm.h (включая Wdm.h, Ntddk.h, Ntifs.h)
Библиотека NtosKrnl.lib
DLL NtosKrnl.exe
IRQL Любой уровень
Правила соответствия DDI HwStorPortProhibitedDIS(storport)

См. также раздел

KeInitializeDpc

KeInsertQueueDpc