struttura FILE_NOTIFY_EXTENDED_INFORMATION (ntifs.h)

FILE_NOTIFY_EXTENDED_INFORMATION fornisce informazioni su una modifica della directory in risposta a una richiesta di IRP_MJ_DIRECTORY_CONTROL con un codice di funzione secondaria IRP_MN_NOTIFY_CHANGE_DIRECTORY quando DIRECTORY_NOTIFY_INFORMATION_CLASS è DirectoryNotifyExtendedInformation.

Sintassi

typedef struct _FILE_NOTIFY_EXTENDED_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;
  ULONG         FileNameLength;
  WCHAR         FileName[1];
} FILE_NOTIFY_EXTENDED_INFORMATION, *PFILE_NOTIFY_EXTENDED_INFORMATION;

Members

NextEntryOffset

Numero di byte che devono essere ignorati per passare al record successivo. Il valore zero indica che si tratta dell'ultimo record.

Action

Tipo di modifica che si è verificato. Questo membro può essere uno dei valori seguenti.

Valore Significato
FILE_ACTION_ADDED (0x00000001) Un file è stato aggiunto alla directory.
FILE_ACTION_REMOVED (0x00000002) Un file è stato rimosso dalla directory.
FILE_ACTION_MODIFIED (0x00000003) La directory è stata modificata. Può trattarsi di una modifica del timestamp o degli attributi.
FILE_ACTION_RENAMED_OLD_NAME (0x00000004) La directory è stata rinominata ed è il nome precedente.
FILE_ACTION_RENAMED_NEW_NAME (0x00000005) La directory è stata rinominata ed è il nuovo nome.

CreationTime

Data e ora in cui la directory o il file è stato creato e aggiunto al file system.

LastModificationTime

Data e ora dell'ultima modifica del contenuto della directory o del file nel file system.

LastChangeTime

Data e ora dell'ultima modifica dei metadati o del contenuto della directory o del file nel file system.

LastAccessTime

Data e ora dell'ultimo accesso alla directory o al file system nel file system.

AllocatedLength

Dimensione allocata del file, in byte.

FileSize

Le nuove dimensioni della directory o del file in byte o delle dimensioni precedenti se le dimensioni sono invariate.

FileAttributes

Attributi di file, che possono essere qualsiasi combinazione valida dei seguenti elementi:

  • 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

Tag identificatore di un punto reparse per la directory o il file.

DUMMYUNIONNAME.EaSize

Lunghezza combinata degli attributi estesi (EA) per il file, in byte.

FileId

Identificatore della directory o del file. Questo numero viene generato e assegnato al file dal file system.

ParentFileId

Identificatore della directory padre del file.

FileNameLength

Dimensione in byte della parte del nome file del record. Questo valore non include un carattere null di terminazione.

FileName[1]

Campo a lunghezza variabile contenente il nome del file relativo all'handle di directory. Il nome del file è nel formato carattere Unicode e non è con terminazione Null.

Requisiti

Requisito Valore
Intestazione ntifs.h

Vedi anche

DIRECTORY_NOTIFY_INFORMATION_CLASS

IRP_MJ_DIRECTORY_CONTROL

ZwNotifyChangeDirectoryFileEx