FILE_NOTIFY_FULL_INFORMATION Struktur (ntifs.h)
Eine FILE_NOTIFY_FULL_INFORMATION Struktur wird als Reaktion auf eine IRP_MJ_DIRECTORY_CONTROL Anforderung mit einem IRP_MN_NOTIFY_CHANGE_DIRECTORY Nebenfunktionscode zurückgegeben, wenn DIRECTORY_NOTIFY_INFORMATION_CLASS DirectoryNotifyFullInformation ist.
Syntax
typedef struct _FILE_NOTIFY_FULL_INFORMATION {
ULONG NextEntryOffset;
ULONG Action;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastModificationTime;
LARGE_INTEGER LastChangeTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER AllocatedLength;
LARGE_INTEGER FileSize;
ULONG FileAttributes;
union {
ULONG ReparsePointTag;
ULONG EaSize;
} DUMMYUNIONNAME;
LARGE_INTEGER FileId;
LARGE_INTEGER ParentFileId;
USHORT FileNameLength;
UCHAR FileNameFlags;
UCHAR Reserved;
WCHAR FileName[1];
} FILE_NOTIFY_FULL_INFORMATION, *PFILE_NOTIFY_FULL_INFORMATION;
Angehörige
NextEntryOffset
Die Anzahl der Bytes, die übersprungen werden müssen, um zum nächsten Datensatz zu gelangen. Ein Wert von Null gibt an, dass dies der letzte Datensatz ist.
Action
Der Typ der Änderung, die aufgetreten ist. Dieses Element kann einer der folgenden Werte sein:
Wert | Bedeutung |
---|---|
FILE_ACTION_ADDED (0x00000001) | Dem Verzeichnis wurde eine Datei hinzugefügt. |
FILE_ACTION_REMOVED (0x00000002) | Eine Datei wurde aus dem Verzeichnis entfernt. |
FILE_ACTION_MODIFIED (0x00000003) | Das Verzeichnis wurde geändert. Dies kann eine Änderung des Zeitstempels oder der Attribute sein. |
FILE_ACTION_RENAMED_OLD_NAME (0x00000004) | Das Verzeichnis wurde umbenannt, und dies ist der alte Name. |
FILE_ACTION_RENAMED_NEW_NAME (0x00000005) | Das Verzeichnis wurde umbenannt, und dies ist der neue Name. |
CreationTime
Das Datum und die Uhrzeit, zu dem das Verzeichnis oder die Datei erstellt und dem Dateisystem hinzugefügt wurde.
LastModificationTime
Datum und Uhrzeit der letzten Änderung des Verzeichnisses oder der Datei im Dateisystem.
LastChangeTime
Datum und Uhrzeit, zu dem die Metadaten oder Inhalte des Verzeichnisses oder der Datei zuletzt im Dateisystem geändert wurden.
LastAccessTime
Datum und Uhrzeit des letzten Zugriffs auf das Verzeichnis oder die Datei im Dateisystem.
AllocatedLength
Die zugewiesene Größe der Datei in Byte.
FileSize
Die neue Größe des Verzeichnisses oder der Datei in Byte oder die alte Größe, wenn die Größe unverändert ist.
FileAttributes
Dateiattribute, die eine beliebige gültige Kombination aus folgendem Sein können:
- FILE_ATTRIBUTE_READONLY
- FILE_ATTRIBUTE_HIDDEN
- FILE_ATTRIBUTE_SYSTEM
- FILE_ATTRIBUTE_DIRECTORY
- FILE_ATTRIBUTE_ARCHIVE
- FILE_ATTRIBUTE_NORMAL
- FILE_ATTRIBUTE_TEMPORARY
- FILE_ATTRIBUTE_COMPRESSED
DUMMYUNIONNAME
DUMMYUNIONNAME.ReparsePointTag
Das Bezeichnertag eines Analysepunkts für das Verzeichnis oder die Datei.
DUMMYUNIONNAME.EaSize
Kombinierte Länge der erweiterten Attribute (EA) für die Datei in Byte.
FileId
Der Bezeichner des Verzeichnisses oder der Datei. Diese Nummer wird generiert und der Datei vom Dateisystem zugewiesen.
ParentFileId
Der Bezeichner des übergeordneten Verzeichnisses der Datei.
FileNameLength
Die Größe des Dateinamenteils des Datensatzes in Byte. Dieser Wert enthält kein endendes NULL-Zeichen.
FileNameFlags
Flags, die angeben, welcher Dateityp zurückgegeben wird, falls bekannt. Wenn keines der folgenden Flags festgelegt ist, ist der Dateityp nicht bekannt. Wenn beide der folgenden Flags festgelegt sind, fungiert der Dateiname sowohl als langer Name als auch als Kurzname (sowohl der NTFS-Name als auch der DOS-Name) eines Long/Short Name-Paares.
Flagge | Wert |
---|---|
FILE_NAME_NTFS (0x01) | Der Dateiname ist der lange Name (NTFS-Name) eines Long/Short Name-Paares. |
FILE_NAME_DOS (0x02) | Der Dateiname ist der Kurzname (DOS-Name) eines Long/Short Name-Paares. |
Reserved
Reserviert für die Systemverwendung.
FileName[1]
Ein Feld mit variabler Länge, das den Dateinamen relativ zum Verzeichnishandle enthält. Der Dateiname befindet sich im Unicode-Zeichenformat und ist nicht null beendet.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 11, Version 22H2 |
Header- | ntifs.h |