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


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

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

Синтаксис

NTSTATUS FLTAPI FltGetVolumeContext(
  [in]  PFLT_FILTER  Filter,
  [in]  PFLT_VOLUME  Volume,
  [out] PFLT_CONTEXT *Context
);

Параметры

[in] Filter

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

[in] Volume

Непрозрачный указатель для тома, контекст которого извлекается. Этот параметр является обязательным и не может иметь значение NULL.

[out] Context

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

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

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

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

Комментарии

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

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

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

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

Чтобы удалить контекст тома, вызовите Метод FltDeleteVolumeContext или FltDeleteContext.

Требования

Требование Значение
Целевая платформа Универсальное
Верхняя часть fltkernel.h (включая Fltkernel.h)
Библиотека FltMgr.lib
DLL Fltmgr.sys
IRQL <= APC_LEVEL

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

FltAllocateContext

FltDeleteContext

FltDeleteVolumeContext

FltReleaseContext

FltSetVolumeContext