Функция FltGetFileContext (fltkernel.h)
Подпрограмма FltGetFileCon text извлекает контекст, заданный для файла экземпляром драйвера минифильтра.
Синтаксис
NTSTATUS FLTAPI FltGetFileContext(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[out] PFLT_CONTEXT *Context
);
Параметры
[in] Instance
Указатель непрозрачного экземпляра для вызывающего объекта. Этот параметр является обязательным и не может быть null.
[in] FileObject
Указатель объекта файла. Этот параметр является обязательным и не может быть null.
[out] Context
Указатель на выделенную вызывающим переменную, которая получает адрес контекста. Этот параметр является обязательным и не может иметь значение NULL.
Возвращаемое значение
FltGetFileContext возвращает STATUS_SUCCESS, когда он успешно возвращает запрошенный контекст файла. В противном случае возвращает соответствующее значение NTSTATUS, например одно из следующих:
Возвращаемый код | Описание |
---|---|
STATUS_NOT_FOUND | В настоящее время в этом файле не найден соответствующий контекст, поэтому FltMgr задать контексту значение NULL_CONTEXT. Это код ошибки. |
STATUS_NOT_SUPPORTED | Контексты файлов не поддерживаются для этого файла. Это код ошибки. |
Замечания
Дополнительные сведения о контекстах см. в разделе О контекстах минифильтра.
Драйвер мини-фильтра вызывает FltGetFileContext для получения контекста файла, заданного для заданного файла.
FltGetFileContext увеличивает число ссылок в контексте, на который указывает параметр контекста Context. Если этот указатель контекста больше не нужен, вызывающий объект должен уменьшать количество ссылок путем вызова FltReleaseContext. Таким образом, каждый успешный вызов FltGetFileContext должен соответствовать последующему вызову FltReleaseContext.
Чтобы задать контекст файла, вызовите FltSetFileContext.
Чтобы выделить новый контекст, вызовите FltAllocateContext.
Чтобы удалить контекст файла, вызовите FltDeleteFileContext или FltDeleteContext.
Чтобы определить, поддерживаются ли контексты файлов для данного файла, вызовите FltSupportsFileContexts или FltSupportsFileContextsEx.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista |
целевая платформа | Всеобщий |
заголовка | fltkernel.h (include Fltkernel.h) |
библиотеки | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <= APC_LEVEL |