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


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

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

Синтаксис

NTSTATUS FLTAPI FltGetFilterFromInstance(
  [in]  PFLT_INSTANCE Instance,
  [out] PFLT_FILTER   *RetFilter
);

Параметры

[in] Instance

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

[out] RetFilter

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

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

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

Возвращаемый код Описание
STATUS_FLT_DELETING_OBJECT
Драйвер минифильтра оторвался. Это код ошибки.

Замечания

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

Чтобы получить непрозрачный указатель тома для тома, к которому подключен определенный экземпляр драйвера минифильтра, вызовите FltGetVolumeFromInstance.

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

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

Требования

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

См. также

FltEnumerateInstanceInformationByFilter

FltEnumerateInstances

FltGetVolumeFromInstance

FltObjectDereference