FltSetInformationFile-Funktion (fltkernel.h)
FltSetInformationFile legt Informationen für eine bestimmte Datei fest.
Syntax
NTSTATUS FLTAPI FltSetInformationFile(
[in] PFLT_INSTANCE Instance,
[in] PFILE_OBJECT FileObject,
[in] PVOID FileInformation,
[in] ULONG Length,
[in] FILE_INFORMATION_CLASS FileInformationClass
);
Parameter
[in] Instance
Undurchsichtiger instance Zeiger für den Aufrufer. Dieser Parameter ist erforderlich und darf nicht NULL sein.
[in] FileObject
Dateiobjektzeiger für die Datei. Dieser Parameter ist erforderlich und darf nicht NULL sein.
[in] FileInformation
Zeiger auf einen vom Aufrufer zugewiesenen Puffer, der Informationen enthält, die für die Datei festgelegt werden sollen. Der Parameter FileInformationClass gibt den Typ der Informationen an. Dieser Parameter ist erforderlich und darf nicht NULL sein.
[in] Length
Größe des FileInformation-Puffers in Byte.
[in] FileInformationClass
Gibt den Typ der Informationen an, die für die Datei festgelegt werden sollen. Die folgenden Werte werden definiert.
Wert | Bedeutung |
---|---|
FileAllocationInformation | Legen Sie FILE_ALLOCATION_INFORMATION für die Datei fest. |
FileBasicInformation | Legen Sie FILE_BASIC_INFORMATION für die Datei fest. |
FileDispositionInformation | Legen Sie FILE_DISPOSITION_INFORMATION für die Datei fest. |
FileEndOfFileInformation | Legen Sie FILE_END_OF_FILE_INFORMATION für die Datei fest. |
FileLinkInformation | Legen Sie FILE_LINK_INFORMATION für die Datei fest. |
FilePositionInformation | Legen Sie FILE_POSITION_INFORMATION für die Datei fest. |
FileRenameInformation | Legen Sie FILE_RENAME_INFORMATION für die Datei fest. Weitere Informationen zum Umbenennen von Dateien finden Sie im folgenden Abschnitt hinweise. |
FileValidDataLengthInformation | Legen Sie FILE_VALID_DATA_LENGTH_INFORMATION für die Datei fest. |
Rückgabewert
FltSetInformationFile gibt STATUS_SUCCESS oder einen entsprechenden NTSTATUS-Wert zurück.
Hinweise
Ein Minifiltertreiber ruft FltSetInformationFile auf, um Informationen für eine bestimmte Datei festzulegen. Die Datei muss derzeit geöffnet sein.
Ein Dateiumbenennungsvorgang erzwingt die folgende Einschränkung für die Parameterwerte, die an FltSetInformationFile übergeben werden: Wie im Verweiseintrag für FILE_RENAME_INFORMATION erwähnt, kann eine Datei oder ein Verzeichnis nur innerhalb eines Volumes umbenannt werden. Anders ausgedrückt: Ein Umbenennungsvorgang kann nicht dazu führen, dass eine Datei oder ein Verzeichnis auf ein anderes Volume verschoben wird. Im Gegensatz zu ZwSetInformationFile überprüft FltSetInformationFile nicht den Inhalt der FILE_RENAME_INFORMATION-Struktur. Daher ist der Aufrufer von FltSetInformationFile dafür verantwortlich, sicherzustellen, dass sich der neue Name für die Datei oder das Verzeichnis auf demselben Volume wie der alte Name befindet.
Minifiltertreiber müssen FltSetInformationFile und nicht ZwSetInformationFile verwenden, um eine Datei umzubenennen.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
Header | fltkernel.h (fltkernel.h einschließen) |
Bibliothek | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | PASSIVE_LEVEL |