Condividi tramite


struttura FILE_STAT_BASIC_INFORMATION (ntifs.h)

FILE_STAT_BASIC_INFORMATION contiene i metadati di base relativi a un file.

Sintassi

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;

Membri

FileId

Specifica l'identificatore di un file.

CreationTime

Specifica l'ora di creazione di un file.

LastAccessTime

Specifica l'ultima volta che è stato eseguito l'accesso a un file.

LastWriteTime

Specifica l'ultima volta in cui è stato scritto un file.

ChangeTime

Specifica l'ultima volta che un file è stato modificato.

AllocationSize

Dimensioni di allocazione dei file, in byte. In genere questo valore è un multiplo delle dimensioni del settore o del cluster del dispositivo fisico sottostante.

EndOfFile

Nuova posizione assoluta di fine file come offset di byte dall'inizio del file. EndOfFile specifica l'offset di byte alla fine del file. Poiché questo valore è in base zero, si riferisce effettivamente al primo byte libero nel file. In altre parole, EndOfFile è l'offset al byte immediatamente successivo all'ultimo byte valido nel file.

FileAttributes

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

Attributo Valore
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

Specifica il tag per un reparse point. Per altre informazioni, vedere Informazioni sui punti di reparse.

NumberOfLinks

Specifica il numero di collegamenti al file.

DeviceType

Impostare quando un driver chiama IoCreateDevice in base al tipo di dispositivo sottostante. Per altre informazioni, vedere Specifica dei tipi di dispositivo.

DeviceCharacteristics

Caratteristiche del dispositivo. Per una descrizione dei valori pertinenti, vedere DEVICE_OBJECT.

Reserved

Riservato per l'uso del sistema.

VolumeSerialNumber

Numero di serie del volume in cui si trova il file.

FileId128

Numero di riferimento del file a 128 byte per il file. Questo numero viene generato e assegnato al file dal file system.

Osservazioni

Queste informazioni possono essere sottoposte a query in uno dei modi seguenti:

  • Chiamare ZwQueryDirectoryFile, passando FileStatBasicInformation come valore di FileInformationClass e passando un buffer allocato FILE_ID_EXTD_DIR_INFORMATION-structured come valore di FileInformation.

  • Creare un IRP con il codice della funzione principale IRP_MJ_DIRECTORY_CONTROL e il codice della funzione secondaria IRP_MN_QUERY_DIRECTORY.

Non sono necessari diritti di accesso specifici per eseguire query su queste informazioni.

I numeri di riferimento dei file, detti anche ID file, sono garantiti come univoci solo all'interno di un file system statico. Non è garantito che siano univoci nel tempo, perché i file system sono liberi di riutilizzarli. Né sono garantiti di rimanere costanti. Ad esempio, il file system FAT genera il numero di riferimento del file per un file dall'offset di byte del record di voce della directory del file (DIRENT) sul disco. La deframmentazione può modificare questo offset di byte. Pertanto, un numero di riferimento file FAT può cambiare nel tempo.

Tutte le date e le ore sono in formato di sistema assoluto. Il tempo di sistema assoluto è il numero di intervalli di 100 nanosecondi dall'inizio dell'anno 1601.

Questa struttura deve essere allineata su un limite LONGLONG (8 byte). Se un buffer contiene due o più di queste strutture, il NextEntryOffset valore in ogni voce, tranne l'ultimo, cade su un limite di 8 byte.

Fabbisogno

Requisito Valore
client minimo supportato Windows 11, versione 24H2
intestazione ntifs.h

Vedere anche

FILE_INFORMATION_CLASS

ZwQueryInformationByName