Partager via


FILE_ID_GLOBAL_TX_DIR_INFORMATION structure (ntifs.h)

La structure FILE_ID_GLOBAL_TX_DIR_INFORMATION contient des informations sur la visibilité transactionnelle des fichiers dans un répertoire.

Syntaxe

typedef struct _FILE_ID_GLOBAL_TX_DIR_INFORMATION {
  ULONG         NextEntryOffset;
  ULONG         FileIndex;
  LARGE_INTEGER CreationTime;
  LARGE_INTEGER LastAccessTime;
  LARGE_INTEGER LastWriteTime;
  LARGE_INTEGER ChangeTime;
  LARGE_INTEGER EndOfFile;
  LARGE_INTEGER AllocationSize;
  ULONG         FileAttributes;
  ULONG         FileNameLength;
  LARGE_INTEGER FileId;
  GUID          LockingTransactionId;
  ULONG         TxInfoFlags;
  WCHAR         FileName[1];
} FILE_ID_GLOBAL_TX_DIR_INFORMATION, *PFILE_ID_GLOBAL_TX_DIR_INFORMATION;

Membres

NextEntryOffset

Décalage d’octet du début de cette entrée, auquel se trouve l’entrée FILE_ID_FULL_DIR_INFORMATION suivante si plusieurs entrées sont présentes dans une mémoire tampon. La valeur zéro indique qu’aucune autre entrée ne suit celle-ci.

FileIndex

Décalage d’octets du fichier dans le répertoire parent. Pour les systèmes de fichiers dans lesquels la position d’un fichier dans le répertoire parent n’est pas fixe et peut être modifiée pour maintenir l’ordre de tri, ce champ doit être défini sur 0 et est ignoré.

CreationTime

Heure de création du fichier.

LastAccessTime

L’heure à laquelle le fichier a été consulté pour la dernière fois.

LastWriteTime

La dernière fois que les informations ont été écrites dans le fichier.

ChangeTime

Heure de la dernière modification du fichier.

EndOfFile

Nouvelle position absolue de fin du fichier en tant que décalage d’octets par rapport au début du fichier. EndOfFile spécifie le décalage sur l’octet immédiatement après le dernier octet valide dans le fichier.

AllocationSize

Taille d’allocation de fichiers en octets. La valeur de ce champ est un multiple entier de la taille du cluster.

FileAttributes

Attributs de fichier.

Indicateur Signification
FILE_ATTRIBUTE_NORMAL Un fichier qui a des attributs standard doit être créé.
FILE_ATTRIBUTE_READONLY Un fichier en lecture seule doit être créé.
FILE_ATTRIBUTE_HIDDEN Un fichier masqué doit être créé.
FILE_ATTRIBUTE_SYSTEM Un fichier système doit être créé.
FILE_ATTRIBUTE_ARCHIVE Le fichier doit être marqué pour qu’il soit archivé.
FILE_ATTRIBUTE_TEMPORARY Un fichier temporaire doit être créé.

FileNameLength

Longueur, en octets, du nom de fichier contenu dans le membre FileName .

FileId

Numéro de référence du fichier. Le système de fichiers génère ce numéro et l’affecte au fichier. Pour les systèmes de fichiers qui ne prennent pas en charge FileId, ce champ est défini sur 0 et ignoré.

LockingTransactionId

Valeur GUID de la transaction pour laquelle ce fichier est verrouillé pour modification. Le système de fichiers génère et affecte cette valeur.

TxInfoFlags

Or au niveau du bit de zéro ou plus des valeurs suivantes.

Valeur Signification
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED 0x00000001 Le fichier est verrouillé pour modification par une transaction. L’ID de la transaction doit être contenu dans le membre LockingTransactionId si cet indicateur est défini.
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_TO_TX 0x00000002 Le fichier est visible pour les énumérateurs traités du répertoire dont l’ID de transaction se trouve dans le membre LockingTransactionId .
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_OUTSIDE_TX 0x00000004 Le fichier est visible pour les énumérateurs traités du répertoire autre que celui dont l’ID de transaction se trouve dans le membre LockingTransactionId , et il est visible pour les énumérateurs non traités du répertoire.
 

Si l’indicateur FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED n’est pas défini, les autres indicateurs ne doivent pas être définis. Si des indicateurs autres que FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED sont définis, l’indicateur FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED doit être défini.

FileName[1]

Séquence de caractères Unicode contenant le nom de fichier.

Note Utilisez FileNameLength pour déterminer la longueur du nom de fichier au lieu de supposer la présence d’un délimiteur null de fin.
 

Remarques

La structure FILE_ID_GLOBAL_TX_DIR_INFORMATION peut être implémentée pour les systèmes de fichiers qui retournent l’indicateur FILE_SUPPORTS_TRANSACTIONS en réponse à une requête à l’aide d’une structure FILE_FS_ATTRIBUTE_INFORMATION. Il ne doit pas être implémenté pour les systèmes de fichiers qui ne retournent pas cet indicateur.

Si l’indicateur FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED n’est pas défini dans TxInfoFlags, LockingTransactionId est ignoré.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 7
En-tête ntifs.h (include FltKernel.h, Ntifs.h)