FILE_NOTIFY_FULL_INFORMATION-Struktur (ntifs.h)

Eine FILE_NOTIFY_FULL_INFORMATION-Struktur wird als Antwort auf eine IRP_MJ_DIRECTORY_CONTROL-Anforderung mit einem IRP_MN_NOTIFY_CHANGE_DIRECTORY Nebenfunktionscode zurückgegeben, wenn DIRECTORY_NOTIFY_INFORMATION_CLASS DirectoryNotifyFullInformation lautet.

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;

Member

NextEntryOffset

Die Anzahl der Bytes, die übersprungen werden müssen, um zum nächsten Datensatz zu gelangen. Der Wert 0 (null) gibt an, dass dies der letzte Datensatz ist.

Action

Der Typ der Änderung, die aufgetreten ist. Dieser Member 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

Das Datum und die Uhrzeit der letzten Änderung des Inhalts des Verzeichnisses oder der Datei im Dateisystem.

LastChangeTime

Das Datum und die Uhrzeit der letzten Änderung der Metadaten oder des Inhalts des Verzeichnisses oder der Datei im Dateisystem.

LastAccessTime

Das Datum und die Uhrzeit des letzten Zugriffs auf das Verzeichnis oder die Datei im Dateisystem.

AllocatedLength

Die zugeordnete Größe der Datei in Bytes.

FileSize

Die neue Größe des Verzeichnisses oder der Datei in Bytes oder die alte Größe, wenn die Größe unverändert ist.

FileAttributes

Dateiattribute, bei denen es sich um eine beliebige gültige Kombination der folgenden Elemente sein kann:

  • 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 Bytes. Dieser Wert enthält kein beendendes NULL-Zeichen.

FileNameFlags

Flags, die angeben, welcher Dateityp zurückgegeben wird, sofern bekannt. Wenn keines der folgenden Flags festgelegt ist, ist der Typ des Dateinamens 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-Paars.

Flag Wert
FILE_NAME_NTFS (0x01) Der Dateiname ist der lange Name (NTFS-Name) eines Long/Short-Name-Paars.
FILE_NAME_DOS (0x02) Der Dateiname ist der Kurzname (DOS-Name) eines Long/Short-Name-Paars.

Reserved

Ist für das System reserviert.

FileName[1]

Ein Feld mit variabler Länge, das den Dateinamen relativ zum Verzeichnishandle enthält. Der Dateiname hat das Unicode-Zeichenformat und ist nicht null-beendet.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 11, Version 22H2
Kopfzeile ntifs.h

Weitere Informationen

DIRECTORY_NOTIFY_INFORMATION_CLASS

IRP_MJ_DIRECTORY_CONTROL

ZwNotifyChangeDirectoryFileEx