Функция 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 | См. раздел "Примечания" |