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

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

FLT_CONTEXT_REGISTRATION

FLT_RELATED_CONTEXTS_EX

FltAllocateContext

FltGetContextsEx

FltReleaseContext