structure FILE_STAT_BASIC_INFORMATION (ntifs.h)
FILE_STAT_BASIC_INFORMATION contient des métadonnées de base sur un fichier.
Syntaxe
typedef struct _FILE_STAT_BASIC_INFORMATION {
LARGE_INTEGER FileId;
LARGE_INTEGER CreationTime;
LARGE_INTEGER LastAccessTime;
LARGE_INTEGER LastWriteTime;
LARGE_INTEGER ChangeTime;
LARGE_INTEGER AllocationSize;
LARGE_INTEGER EndOfFile;
ULONG FileAttributes;
ULONG ReparseTag;
ULONG NumberOfLinks;
ULONG DeviceType;
ULONG DeviceCharacteristics;
ULONG Reserved;
LARGE_INTEGER VolumeSerialNumber;
FILE_ID_128 FileId128;
} FILE_STAT_BASIC_INFORMATION, *PFILE_STAT_BASIC_INFORMATION;
Membres
FileId
Spécifie l’identificateur d’un fichier.
CreationTime
Spécifie l’heure de création d’un fichier.
LastAccessTime
Spécifie la dernière fois qu’un fichier a été accédé.
LastWriteTime
Spécifie la dernière fois qu’un fichier a été écrit.
ChangeTime
Spécifie la dernière fois qu’un fichier a été modifié.
AllocationSize
Taille d’allocation de fichiers, en octets. En règle générale, cette valeur est un multiple de la taille du secteur ou du cluster de l’appareil physique sous-jacent.
EndOfFile
Nouvelle position absolue de fin de fichier en tant que décalage d’octets à partir du début du fichier. EndOfFile spécifie le décalage d’octet à la fin du fichier. Étant donné que cette valeur est basée sur zéro, elle fait référence au premier octet libre dans le fichier. En d’autres termes, EndOfFile correspond au décalage de l’octet immédiatement après le dernier octet valide dans le fichier.
FileAttributes
Attributs de fichier, qui peuvent être n’importe quelle combinaison valide des éléments suivants :
Attribut | Valeur |
---|---|
FILE_ATTRIBUTE_READONLY | 0x00000001 |
FILE_ATTRIBUTE_HIDDEN | 0x00000002 |
FILE_ATTRIBUTE_SYSTEM | 0x00000004 |
FILE_ATTRIBUTE_DIRECTORY | 0x00000010 |
FILE_ATTRIBUTE_ARCHIVE | 0x00000020 |
FILE_ATTRIBUTE_NORMAL | 0x00000080 |
ReparseTag
Spécifie la balise d’un point d’analyse. Pour plus d’informations, consultez À propos des points d’analyse.
NumberOfLinks
Spécifie le nombre de liens vers le fichier.
DeviceType
Définissez quand un pilote appelle IoCreateDevice le cas échéant pour le type d’appareil sous-jacent. Pour plus d’informations, consultez Spécification des types d’appareils.
DeviceCharacteristics
Caractéristiques de l’appareil. Pour obtenir une description des valeurs pertinentes, consultez DEVICE_OBJECT.
Reserved
Réservé à l’utilisation du système.
VolumeSerialNumber
Numéro de série du volume où se trouve le fichier.
FileId128
Numéro de référence du fichier de 128 octets pour le fichier. Ce nombre est généré et affecté au fichier par le système de fichiers.
Remarques
Ces informations peuvent être interrogées de l’une des manières suivantes :
Appelez ZwQueryDirectoryFile, en passant FileStatBasicInformation comme valeur de FileInformationClass et en passant une mémoire tampon FILE_ID_EXTD_DIR_INFORMATION-structurée allouée par l’appelant comme valeur de FileInformation.
Créez un IRP avec le code de fonction principal IRP_MJ_DIRECTORY_CONTROL et le code de fonction secondaire IRP_MN_QUERY_DIRECTORY.
Aucun droit d’accès spécifique n’est requis pour interroger ces informations.
Les numéros de référence de fichier, également appelés ID de fichier, sont garantis d’être uniques uniquement dans un système de fichiers statique. Elles ne sont pas garanties d’être uniques au fil du temps, car les systèmes de fichiers sont libres de les réutiliser. Ils ne sont pas assurés de rester constants. Par exemple, le système de fichiers FAT génère le numéro de référence de fichier d’un fichier à partir du décalage d’octets de l’enregistrement d’entrée de répertoire du fichier (DIRENT) sur le disque. La défragmentation peut modifier ce décalage d’octet. Ainsi, un numéro de référence de fichier FAT peut changer au fil du temps.
Toutes les dates et heures sont au format d’heure système absolu. L’heure système absolue est le nombre d’intervalles de 100 nanosecondes depuis le début de l’année 1601.
Cette structure doit être alignée sur une limite LONGLONG (8 octets). Si une mémoire tampon contient deux ou plusieurs de ces structures, la NextEntryOffset valeur dans chaque entrée, à l’exception du dernier, tombe sur une limite de 8 octets.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 11, version 24H2 |
d’en-tête | ntifs.h |