FLT_PARAMETERS für IRP_MJ_SET_INFORMATION Union
Union-Komponente, die verwendet wird, wenn das Feld MajorFunction der FLT_IO_PARAMETER_BLOCK-Struktur für den Vorgang IRP_MJ_SET_INFORMATION ist.
Syntax
typedef union _FLT_PARAMETERS {
... ;
struct {
ULONG Length;
FILE_INFORMATION_CLASS POINTER_ALIGNMENT FileInformationClass;
PFILE_OBJECT ParentOfTarget;
union {
struct {
BOOLEAN ReplaceIfExists;
BOOLEAN AdvanceOnly;
};
ULONG ClusterCount;
HANDLE DeleteHandle;
};
PVOID InfoBuffer;
} SetFileInformation;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Member
SetFileInformation: Struktur, die die folgenden Member enthält.
Länge: Länge des Puffers in InfoBuffer in Bytes.
FileInformationClass: Typ der Informationen, die für die Datei festgelegt werden sollen. Einer der folgenden:
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. FileValidDataLengthInformation Legen Sie FILE_VALID_DATA_LENGTH_INFORMATION für die Datei fest. ParentOfTarget: Für Umbenennungs- oder Verknüpfungsvorgänge. Wenn InfoBuffer-FileName> einen vollqualifizierten Dateinamen enthält oder InfoBuffer-RootDirectory> nicht NULL ist, ist dieser Member ein Dateiobjektzeiger für das übergeordnete Verzeichnis der Datei, die das Ziel des Vorgangs ist. Andernfalls ist er NULL.
( unbenannte Struktur )
Struktur, die die folgenden Member enthält.ReplaceIfExists: Für Umbenennungs- oder Verknüpfungsvorgänge. Legen Sie diesen Wert auf TRUE fest, um anzugeben, dass eine Datei, die bereits mit demselben Namen vorhanden ist, durch die angegebene Datei ersetzt werden soll. Legen Sie auf FALSE fest, wenn der Umbenennungs- oder Verknüpfungsvorgang fehlschlagen soll, wenn bereits eine Datei mit dem angegebenen Namen vorhanden ist.
AdvanceOnly: Ein Flag für Dateiendevorgänge. Dies bestimmt die Verwendung des EndOfFile-ElementsFILE_END_OF_FILE_INFORMATION Struktur bei FileInformationClass == FileEndOfFileInformation. Bei TRUE wird nur dann eine neue gültige Datenlänge für die Datei von EndOfFile festgelegt, wenn dies die aktuell gültige Datenlänge erhöht. Bei FALSE wird eine neue Dateigröße aus EndOfFile festgelegt.
ClusterCount: Für die Systemverwendung reserviert. Nicht verwenden.
DeleteHandle: Für die Systemverwendung reserviert. Nicht verwenden.
InfoBuffer: Zeiger auf einen Eingabepuffer, der die festzulegenden Dateiinformationen enthält.
Hinweise
Die FLT_PARAMETERS-Struktur für IRP_MJ_SET_INFORMATION-Vorgänge enthält die Parameter für einen Set-Information-Vorgang, der durch eine Rückrufdatenstruktur (FLT_CALLBACK_DATA) dargestellt wird. Sie ist in einer FLT_IO_PARAMETER_BLOCK-Struktur enthalten.
IRP_MJ_SET_INFORMATION ist ein IRP-basierter Vorgang.
Das AdvanceOnly-Element wird vom Cache-Manager auf TRUE festgelegt, um das Dateisystem zu benachrichtigen, die aktuell gültige Datenlänge auf dem Datenträger auf die neue gültige Datenlänge in EndOfFile zu aktualisieren. Wenn AdvanceOnlyauf FALSE festgelegt ist, wird im EndOfFile-Element eine neue Dateigröße festgelegt, die größer oder kleiner als die aktuelle Dateigröße sein kann.
Anforderungen
Anforderungstyp | Anforderung |
---|---|
Header | Fltkernel.h ( fltkernel.h einschließen) |