FILE_FS_ATTRIBUTE_INFORMATION struttura (ntifs.h)

La struttura FILE_FS_ATTRIBUTE_INFORMATION viene usata per eseguire query sulle informazioni sull'attributo per un file system.

Sintassi

typedef struct _FILE_FS_ATTRIBUTE_INFORMATION {
  ULONG FileSystemAttributes;
  LONG  MaximumComponentNameLength;
  ULONG FileSystemNameLength;
  WCHAR FileSystemName[1];
} FILE_FS_ATTRIBUTE_INFORMATION, *PFILE_FS_ATTRIBUTE_INFORMATION;

Members

FileSystemAttributes

Maschera di bit dei flag che specificano gli attributi del file system specificato, come combinazione compatibile dei flag seguenti.

Valore Significato
FILE_CASE_SENSITIVE_SEARCH (0x00000001 ) Il file system supporta nomi di file con distinzione tra maiuscole e minuscole.
FILE_CASE_PRESERVED_NAMES (0x00000002 ) Il file system mantiene il caso dei nomi di file quando inserisce un nome su disco.
FILE_UNICODE_ON_DISK (0x00000004 ) Il file system supporta Unicode nei nomi di file.
FILE_PERSISTENT_ACLS (0x00000008 ) Il file system mantiene e applica gli elenchi di controllo di accesso (ACL).
FILE_FILE_COMPRESSION (0x00000010 ) Il file system supporta la compressione basata su file. Questo flag non è compatibile con il flag di FILE_VOLUME_IS_COMPRESSED . Questo flag non influisce sul modo in cui i dati vengono trasferiti sulla rete.
FILE_VOLUME_QUOTAS (0x00000020 ) Il file system supporta quote per utente.
FILE_SUPPORTS_SPARSE_FILES (0x00000040 ) Il file system supporta i file sparse.
FILE_SUPPORTS_REPARSE_POINTS (0x00000080 ) Il file system supporta i punti di reparse.
FILE_SUPPORTS_REMOTE_STORAGE (0x00000100 ) Il file system supporta l'archiviazione remota.
FILE_RETURNS_CLEANUP_RESULT_INFO (0x00000200 ) In un'operazione di pulizia riuscita, il file system restituisce informazioni che descrivono azioni aggiuntive eseguite durante la pulizia, ad esempio l'eliminazione del file. I filtri del file system possono esaminare queste informazioni nel callback post-pulizia.
FILE_SUPPORTS_POSIX_UNLINK_RENAME (0x00000400 ) Il file system supporta operazioni di eliminazione e ridenominazione in stile POSIX.
FILE_VOLUME_IS_COMPRESSED (0x00008000 ) Il volume specificato è un volume compresso. Questo flag non è compatibile con il flag di FILE_FILE_COMPRESSION . Ciò non influisce sul modo in cui i dati vengono trasferiti sulla rete.
FILE_SUPPORTS_OBJECT_IDS (0x00010000 ) Il file system supporta gli identificatori di oggetto.
FILE_SUPPORTS_ENCRYPTION (0x00020000 ) Il file system supporta la crittografia.
FILE_NAMED_STREAMS (0x00040000 ) Il file system supporta i flussi di dati denominati per un file.
FILE_READ_ONLY_VOLUME (0x00080000 ) Il volume specificato è di sola lettura.
FILE_SEQUENTIAL_WRITE_ONCE (0x00100000 ) Il volume specificato può essere scritto in una sola volta. La scrittura deve essere eseguita in ordine sequenziale.
FILE_SUPPORTS_TRANSACTIONS (0x00200000 ) Il file system supporta l'elaborazione delle transazioni.
FILE_SUPPORTS_HARD_LINKS (0x00400000 ) Il file system supporta collegamenti diretti ad altri dispositivi e partizioni.
FILE_SUPPORTS_EXTENDED_ATTRIBUTES (0x00800000 ) Il file system supporta attributi estesi (EAs).
FILE_SUPPORTS_OPEN_BY_FILE_ID (0x01000000 ) Il file system supporta l'apertura in base all'ID file.
FILE_SUPPORTS_USN_JOURNAL (0x02000000 ) Il file system supporta i journal del numero di sequenza di aggiornamento (USN).
FILE_SUPPORTS_INTEGRITY_STREAMS (0x04000000 ) Il file system supporta i flussi di integrità.
FILE_SUPPORTS_BLOCK_REFCOUNTING (0x08000000 ) Il file system supporta la clonazione in blocchi, ovvero la condivisione di cluster logici tra file nello stesso volume. Il file system realloca nelle scritture nei cluster condivisi.
FILE_SUPPORTS_SPARSE_VDL (0x10000000 ) Il file system tiene traccia del fatto che ogni cluster di un file contenga dati validi (da scritture esplicite o zeri automatici) o dati non validi (non è ancora stato scritto o zero). I file system che usano la lunghezza dei dati validi (VDL) non archiviano una lunghezza di dati valida e non richiedono che i dati validi siano contigui all'interno di un file.
FILE_DAX_VOLUME (0x20000000 ) Il volume specificato è un volume DAX (Direct Access).
FILE_SUPPORTS_GHOSTING (0x40000000 ) Il file system supporta il ghosting.

MaximumComponentNameLength

Lunghezza massima del componente del nome file, in byte, supportata dal file system specificato. Un componente nome file è la parte di un nome file tra i caratteri separatori del percorso, ad esempio le barre rovesciate.

FileSystemNameLength

Lunghezza, in byte, del nome del file system. Il valore di questo campo deve essere maggiore di zero.

FileSystemName[1]

Campo Unicode a lunghezza variabile contenente il nome del file system. Questo campo non viene terminato con valori Null e deve essere gestito come sequenza di byte FileSystemNameLength .

Commenti

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

Non sono necessari diritti di accesso specifici per eseguire query su queste informazioni. Queste informazioni sono quindi disponibili finché il volume è accessibile tramite un handle aperto al volume stesso o a un file o a una directory nel volume.

Le dimensioni del buffer passate nel parametro FileInformation a FltQueryVolumeInformation o ZwQueryVolumeInformationFile devono essere almeno sizeof(FILE_FS_ATTRIBUTE_INFORMATION). Poiché non è possibile assumere una lunghezza massima del nome del file system (praticamente, il limite è 2^31 punti di carattere), una seconda chiamata a una di queste routine sarà necessaria una volta che FileSystemNameLength è noto.

Questa struttura deve essere allineata a un limite LONG (4 byte).

Requisiti

Requisito Valore
Intestazione ntifs.h (include Ntifs.h, Fltkernel.h)

Vedi anche

ACL

FltQueryVolumeInformation

IRP_MJ_QUERY_VOLUME_INFORMATION

ZwQueryVolumeInformationFile