Функция 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 (include Wdm.h, Ntddk.h, Ntifs.h) |
библиотеки | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | Любой уровень |
правил соответствия DDI | HwStorPortProhibitedDIs(storport) |