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


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

Подпрограмма FltGetVolumeFromFileObject возвращает непрозрачный указатель на том, на котором находится заданный поток файлов.

Синтаксис

NTSTATUS FLTAPI FltGetVolumeFromFileObject(
  [in]  PFLT_FILTER  Filter,
  [in]  PFILE_OBJECT FileObject,
  [out] PFLT_VOLUME  *RetVolume
);

Параметры

[in] Filter

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

[in] FileObject

Указатель объекта файла для потока файлов, который находится на томе.

[out] RetVolume

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

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

FltGetVolumeFromFileObject возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS, например одно из следующих:

Возвращаемый код Описание
STATUS_FLT_DELETING_OBJECT
Том отключается. Это код ошибки.
STATUS_INVALID_PARAMETER
Не найдено соответствующего тома. Это код ошибки.

Замечания

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

Чтобы получить указатель на объект устройства для заданного тома, вызовите FltGetDeviceObject.

Требования

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

См. также

FltGetDeviceObject

FltGetDiskDeviceObject

FltGetVolumeFromDeviceObject

FltObjectDereference