Поделиться через


Функция FltGetInstanceContext (fltkernel.h)

Подпрограмма fltGetInstanceContext извлекает контекст, заданный для экземпляра заданным драйвером минифильтра.

Синтаксис

NTSTATUS FLTAPI FltGetInstanceContext(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_CONTEXT  *Context
);

Параметры

[in] Instance

Указатель непрозрачного экземпляра для экземпляра.

[out] Context

Указатель на выделенную вызывающим переменную, которая получает адрес контекста экземпляра. Этот параметр является обязательным и не может иметь значение NULL.

Возвращаемое значение

FltGetInstanceContext возвращает STATUS_SUCCESS при успешном возвращении запрошенного контекста экземпляра. В противном случае возвращается соответствующее значение NTSTATUS, например следующее:

Возвращаемый код Описание
STATUS_NOT_FOUND В настоящее время в этом экземпляре не найден соответствующий контекст. FltMgr задает контекста значение NULL_CONTEXT. Это код ошибки.

Замечания

Дополнительные сведения о контекстах см. в разделе О контекстах минифильтра.

FltGetInstanceContext извлекает контекст, заданный для экземпляра заданным драйвером мини-фильтра.

FltGetInstanceContext увеличивает количество ссылок в контексте, на который указывает параметр Context. Если этот указатель контекста больше не нужен, вызывающий объект должен уменьшать количество ссылок путем вызова FltReleaseContext. Таким образом, каждый успешный вызов FltGetInstanceContext должен соответствовать последующему вызову FltReleaseContext.

Чтобы задать контекст для экземпляра, вызовите FltSetInstanceContext.

Чтобы выделить новый контекст, вызовите FltAllocateContext.

Чтобы удалить контекст файла, вызовите FltDeleteInstanceContext или FltDeleteContext.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка fltkernel.h (include Fltkernel.h)
библиотеки FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

См. также

FltAllocateContext

FltDeleteContext

FltDeleteInstanceContext

FltReleaseContext

FltSetInstanceContext