FltGetStreamHandleContext function (fltkernel.h)
The FltGetStreamHandleContext routine retrieves a context that was set for a stream handle by a given minifilter driver instance.
Syntax
NTSTATUS FLTAPI FltGetStreamHandleContext(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PFLT_CONTEXT *Context
);
Parameters
[in] Instance
Opaque instance pointer for the minifilter driver instance whose context is to be retrieved.
[in] FileObject
Pointer to a file object for the stream handle.
[out] Context
Pointer to a caller-allocated variable that receives the address of the context. This parameter can't be set to NULL.
Return value
FltGetStreamHandleContext returns STATUS_SUCCESS when it successfully returns the requested context. Otherwise, it returns an appropriate NTSTATUS value such as one of the following:
Return code | Description |
---|---|
STATUS_NOT_FOUND | No matching context was found on this file at this time, so FltMgr set Context to NULL_CONTEXT. This is an error code. |
STATUS_NOT_SUPPORTED | The file system does not support per-stream contexts for this file stream. This is an error code. |
Remarks
For more information about contexts, see About minifilter contexts.
FltGetStreamHandleContext retrieves a context that was set for a stream handle by a given minifilter driver.
FltGetStreamHandleContext increments the reference count on the context that the Context parameter points to. When this context pointer is no longer needed, the caller must decrement its reference count by calling FltReleaseContext. Thus every successful call to FltGetStreamHandleContext must be matched by a subsequent call to FltReleaseContext.
To set a context for a stream handle, call FltSetStreamHandleContext
To allocate a new context, call FltAllocateContext.
To delete a stream handle context, call FltDeleteStreamHandleContext or FltDeleteContext.
Requirements
Requirement | Value |
---|---|
Target Platform | Universal |
Header | fltkernel.h (include Fltkernel.h) |
Library | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |