Функция FsRtlLookupPerFileObjectContext (ntifs.h)
Для драйвера фильтра файловой системы прежних версий функция FsRtlLookupPerFileObjectContext извлекает сведения о контексте, ранее связанные с объектом файла.
Синтаксис
PFSRTL_PER_FILEOBJECT_CONTEXT FsRtlLookupPerFileObjectContext(
[in] PFILE_OBJECT FileObject,
[in, optional] PVOID OwnerId,
[in, optional] PVOID InstanceId
);
Параметры
[in] FileObject
Указатель на объект файла, для которого требуется запрашивать сведения о контексте.
[in, optional] OwnerId
Указатель на выделенную вызывающим переменную, которая однозначно идентифицирует фильтр владения структуры контекста объекта для каждого файла. Формат этой переменной зависит от драйвера фильтра.
[in, optional] InstanceId
Указатель на выделенную вызывающим переменную, которую можно использовать для различения структур контекста объекта файла, созданных одним драйвером фильтра. Формат этой переменной зависит от драйвера фильтра. Этот параметр является необязательным и может быть null.
Возвращаемое значение
FsRtlLookupPerFileObjectContext возвращает указатель на первый найденный контекст объекта для каждого файла. Если совпадение не найдено, FsRtlLookupPerFileObjectContext возвращает NULL.
Замечания
Драйвер фильтра файловой системы прежних версий вызывает FsRtlLookupPerFileObjectContext для получения структуры контекста каждого объекта файла. Структура контекста содержит сведения о контексте, которые драйвер фильтра поддерживает для объекта файла. Эта структура контекста должна быть ранее связана с объектом файла путем вызова функции FsRtlInsertPerFileObjectContext.
Если структура FSRTL_PER_FILEOBJECT_CONTEXT внедрена в фильтр, определенную в структуру контекста объекта файла, макрос CONTAINING_RECORD можно использовать для получения указателя на голову определяемой фильтром структуры.
Чтобы инициализировать структуру контекста объекта файла, используйте макрос FsRtlInitPerFileObjectContext .
Чтобы связать инициализированную структуру контекста объекта с файлом, используйте функцию FsRtlInsertPerFileObjectContext.
Чтобы удалить структуру контекста объекта файла, связанную с объектом файла, используйте функцию FsRtlRemovePerFileObjectContext.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista |
целевая платформа | Всеобщий |
заголовка | ntifs.h (include Fltkernel.h, Ntifs.h) |
библиотеки |
NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |