FltReleaseContextsEx function (fltkernel.h)
FltReleaseContextsEx releases each context in a given FLT_RELATED_CONTEXTS_EX structure.
Syntax
VOID FLTAPI FltReleaseContextsEx(
[in] SIZE_T ContextsSize,
[in] PFLT_RELATED_CONTEXTS_EX Contexts
);
Parameters
[in] ContextsSize
The size, in bytes, of the FLT_RELATED_CONTEXTS_EX structure pointed to by Contexts. Set to sizeof(FLT_RELATED_CONTEXTS_EX).
[in] Contexts
Pointer to the FLT_RELATED_CONTEXTS_EX structure.
Return value
None
Remarks
For more information about contexts, see About minifilter contexts.
FltReleaseContextsEx decrements the reference count on all contexts in the FLT_RELATED_CONTEXTS_EX structure and sets all members of the structure to NULL_CONTEXT.
To get the FLT_RELATED_CONTEXTS_EX structure for a given minifilter driver for a given I/O request, call FltGetContextsEx.
For more information about context reference counting, see Referencing Contexts.
Callers of FltReleaseContextsEx must be running at IRQL <= DISPATCH_LEVEL if all contexts were allocated from nonpaged pool. If any contexts were allocated from paged pool, callers must be running at IRQL <= APC_LEVEL.
When each context's reference count reaches zero, the context is freed immediately if the caller is running at IRQL <= APC_LEVEL. If the caller is running at IRQL DISPATCH_LEVEL, a work item is scheduled to free the context.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available starting with Windows 8. |
Target Platform | Universal |
Header | fltkernel.h (include Fltkernel.h) |
Library | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | See Remarks section. |