Функция FltReleaseContextsEx (fltkernel.h)
FltReleaseContextsEx освобождает каждый контекст в заданной FLT_RELATED_CONTEXTS_EX структуре.
Синтаксис
VOID FLTAPI FltReleaseContextsEx(
[in] SIZE_T ContextsSize,
[in] PFLT_RELATED_CONTEXTS_EX Contexts
);
Параметры
[in] ContextsSize
Размер (в байтах) структуры FLT_RELATED_CONTEXTS_EX , на которую указывает Контексты. Задайте для параметра sizeof(FLT_RELATED_CONTEXTS_EX).
[in] Contexts
Указатель на структуру FLT_RELATED_CONTEXTS_EX .
Возвращаемое значение
None
Remarks
Дополнительные сведения о контекстах см. в разделе О контекстах минифильтра.
FltReleaseContextsEx уменьшает количество ссылок во всех контекстах в структуре FLT_RELATED_CONTEXTS_EX и задает для всех членов структуры значение NULL_CONTEXT.
Чтобы получить структуру FLT_RELATED_CONTEXTS_EX для заданного драйвера минифильтра для заданного запроса ввода-вывода, вызовите FltGetContextsEx.
Дополнительные сведения о подсчете ссылок на контексты см. в разделе Ссылки на контексты.
Вызывающие функции FltReleaseContextsEx должны выполняться в IRQL <= DISPATCH_LEVEL, если все контексты были выделены из непагированного пула. Если из выстраивного пула были выделены какие-либо контексты, вызывающие компоненты должны выполняться в IRQL <= APC_LEVEL.
Когда количество ссылок каждого контекста достигает нуля, контекст немедленно освобождается, если вызывающий объект выполняется в IRQL <= APC_LEVEL. Если вызывающий объект выполняется на DISPATCH_LEVEL IRQL, то для освобождения контекста планируется рабочий элемент.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Доступно начиная с Windows 8. |
Целевая платформа | Универсальное |
Верхняя часть | fltkernel.h (включая Fltkernel.h) |
Библиотека | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | См. раздел "Примечания". |