Функция FltCbdqEnable (fltkernel.h)

FltCbdqEnable включает очередь данных обратного вызова, которая была отключена при предыдущем вызове FltCbdqDisable.

Синтаксис

VOID FLTAPI FltCbdqEnable(
  [in, out] PFLT_CALLBACK_DATA_QUEUE Cbdq
);

Параметры

[in, out] Cbdq

Указатель на очередь данных обратного вызова.

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

None

Remarks

FltCbdqEnable повторно включает очередь данных обратного вызова, которая была отключена при предыдущем вызове FltCbdqDisable. После повторного создания очереди данных обратного вызова она может снова принимать новые элементы.

Драйверы минифильтра могут использовать подпрограммы FltCbdqXxx для реализации очереди данных обратного вызова для операций ввода-вывода на основе IRP. С помощью этих процедур драйверы минифильтра могут сделать свою очередь безопасной для отмены; система прозрачно обрабатывает отмену ввода-вывода для драйвера минифильтра.

Подпрограммы FltCbdqXxx можно использовать только для операций ввода-вывода на основе IRP. Чтобы определить, представляет ли данная структура данных обратного вызова операцию ввода-вывода на основе IRP, используйте макрос FLT_IS_IRP_OPERATION .

Если очередь защищена спин-блокировкой , а не объектом мьютекса или переменной ресурса, вызывающий объект FltCbdqEnable может выполняться в IRQL <= DISPATCH_LEVEL. Если используется мьютекс или ресурс, вызывающий объект должен работать в среде IRQL <= APC_LEVEL.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть fltkernel.h (включая Fltkernel.h)
IRQL См. раздел "Примечания"

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

FLT_CALLBACK_DATA_QUEUE

FLT_IS_IRP_OPERATION

FltCbdqDisable

FltCbdqInitialize

FltCbdqInsertIo

FltCbdqRemoveIo

FltCbdqRemoveNextIo