Функция FltSetInformationFile (fltkernel.h)
FltSetInformationFile задает сведения для заданного файла.
Синтаксис
NTSTATUS FLTAPI FltSetInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[in] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass
);
Параметры
[in] Instance
Указатель непрозрачного экземпляра для вызывающего объекта. Этот параметр является обязательным и не может иметь значение NULL.
[in] FileObject
Указатель на объект file для файла. Этот параметр является обязательным и не может иметь значение NULL.
[in] FileInformation
Указатель на буфер, выделенный вызывающим объектом, который содержит сведения, которые необходимо задать для файла. Параметр FileInformationClass указывает тип сведений. Этот параметр является обязательным и не может иметь значение NULL.
[in] Length
Размер буфера FileInformation в байтах.
[in] FileInformationClass
Указывает тип сведений, которые необходимо задать для файла. Определены следующие значения.
Значение | Значение |
---|---|
FileAllocationInformation | Задайте FILE_ALLOCATION_INFORMATION для файла. |
FileBasicInformation | Задайте FILE_BASIC_INFORMATION для файла. |
FileDispositionInformation | Задайте FILE_DISPOSITION_INFORMATION для файла. |
FileEndOfFileInformation | Задайте FILE_END_OF_FILE_INFORMATION для файла. |
FileLinkInformation | Задайте FILE_LINK_INFORMATION для файла. |
FilePositionInformation | Задайте FILE_POSITION_INFORMATION для файла. |
FileRenameInformation | Задайте FILE_RENAME_INFORMATION для файла. Дополнительные сведения о переименовании файлов см. в следующем разделе Примечания. |
FileValidDataLengthInformation | Задайте FILE_VALID_DATA_LENGTH_INFORMATION для файла. |
Возвращаемое значение
FltSetInformationFile возвращает STATUS_SUCCESS или соответствующее значение NTSTATUS.
Комментарии
Драйвер мини-фильтра вызывает FltSetInformationFile , чтобы задать сведения для заданного файла. В настоящее время файл должен быть открыт.
Операция переименования файла накладывает следующее ограничение на значения параметров, передаваемые в FltSetInformationFile. Как указано в справочной записи для FILE_RENAME_INFORMATION, файл или каталог можно переименовать только в томе. Другими словами, операция переименования не может привести к перемещению файла или каталога в другой том. В отличие от ZwSetInformationFile, FltSetInformationFile не проверяет содержимое структуры FILE_RENAME_INFORMATION. Таким образом, вызывающий объект FltSetInformationFile отвечает за то, чтобы новое имя файла или каталога было в том же томе, что и старое имя.
Драйверы мини-фильтра должны использовать FltSetInformationFile , а не ZwSetInformationFile, для переименования файла.
Требования
Требование | Значение |
---|---|
Целевая платформа | Универсальное |
Верхняя часть | fltkernel.h (включая Fltkernel.h) |
Библиотека | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |