Partager via


FILE_NOTIFY_EXTENDED_INFORMATION structure (ntifs.h)

FILE_NOTIFY_EXTENDED_INFORMATION fournit des informations sur un changement d’annuaire en réponse à une demande de IRP_MJ_DIRECTORY_CONTROL avec un code de fonction secondaire IRP_MN_NOTIFY_CHANGE_DIRECTORY lorsque DIRECTORY_NOTIFY_INFORMATION_CLASS est DirectoryNotifyExtendedInformation.

Syntaxe

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;

Membres

NextEntryOffset

Nombre d’octets qui doivent être ignorés pour accéder à l’enregistrement suivant. La valeur zéro indique qu’il s’agit du dernier enregistrement.

Action

Type de modification qui s’est produite. Ce membre peut être l’une des valeurs suivantes.

Valeur Signification
FILE_ACTION_ADDED (0x00000001) Un fichier a été ajouté au répertoire.
FILE_ACTION_REMOVED (0x00000002) Un fichier a été supprimé du répertoire.
FILE_ACTION_MODIFIED (0x00000003) Le répertoire a été modifié. Il peut s’agir d’une modification de l’horodatage ou des attributs.
FILE_ACTION_RENAMED_OLD_NAME (0x00000004) Le répertoire a été renommé et il s’agit de l’ancien nom.
FILE_ACTION_RENAMED_NEW_NAME (0x00000005) Le répertoire a été renommé et il s’agit du nouveau nom.

CreationTime

Date et heure de création et d’ajout du répertoire ou du fichier au système de fichiers.

LastModificationTime

Date et heure de la dernière modification du contenu du répertoire ou du fichier dans le système de fichiers.

LastChangeTime

Date et heure auxquelles les métadonnées ou le contenu du répertoire ou du fichier ont été modifiés pour la dernière fois dans le système de fichiers.

LastAccessTime

Date et heure de la dernière consultation du répertoire ou du fichier dans le système de fichiers.

AllocatedLength

Taille allouée du fichier, en octets.

FileSize

Nouvelle taille du répertoire ou du fichier en octets, ou ancienne taille si la taille est inchangée.

FileAttributes

Attributs de fichier, qui peuvent être n’importe quelle combinaison valide des éléments suivants :

  • 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

Balise d’identificateur d’un point d’analyse pour le répertoire ou le fichier.

DUMMYUNIONNAME.EaSize

Longueur combinée des attributs étendus (EA) pour le fichier, en octets.

FileId

Identificateur du répertoire ou du fichier. Ce nombre est généré et affecté au fichier par le système de fichiers.

ParentFileId

Identificateur du répertoire parent du fichier.

FileNameLength

Taille de la partie du nom de fichier de l’enregistrement, en octets. Cette valeur n’inclut pas de caractère null de fin.

FileName[1]

Champ de longueur variable qui contient le nom de fichier relatif au handle de répertoire. Le nom de fichier est au format caractère Unicode et n’est pas terminé par null.

Configuration requise

Condition requise Valeur
En-tête ntifs.h

Voir aussi

DIRECTORY_NOTIFY_INFORMATION_CLASS

IRP_MJ_DIRECTORY_CONTROL

ZwNotifyChangeDirectoryFileEx