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


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

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

Синтаксис

NTSTATUS FLTAPI FltGetFilterFromName(
  [in]  PCUNICODE_STRING FilterName,
  [out] PFLT_FILTER      *RetFilter
);

Параметры

[in] FilterName

Указатель на структуру UNICODE_STRING, содержащую имя драйвера мини-фильтра. (Сравнение имен не учитывает регистр.)

[out] RetFilter

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

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

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

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

Замечания

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

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

Требования

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

См. также

FltObjectDereference

FltRegisterFilter

UNICODE_STRING