struttura FILE_ID_GLOBAL_TX_DIR_INFORMATION (ntifs.h)
La struttura FILE_ID_GLOBAL_TX_DIR_INFORMATION contiene informazioni sulla visibilità transazionale per i file in una directory.
Sintassi
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;
Membri
NextEntryOffset
Offset di byte dall'inizio di questa voce, in corrispondenza del quale si trova la voce FILE_ID_FULL_DIR_INFORMATION successiva se sono presenti più voci in un buffer. Un valore pari a zero indica che nessun'altra voce segue questa.
FileIndex
Offset di byte del file all'interno della directory padre. Per i file system in cui la posizione di un file all'interno della directory padre non è fissa e può essere modificata per mantenere l'ordinamento, questo campo deve essere impostato su 0 e viene ignorato.
CreationTime
Ora di creazione del file.
LastAccessTime
Ora dell'ultimo accesso al file.
LastWriteTime
L'ultima volta che le informazioni sono state scritte nel file.
ChangeTime
Ora dell'ultima modifica del file.
EndOfFile
Nuova posizione assoluta di fine file come offset di byte dall'inizio del file. EndOfFile specifica l'offset sul byte immediatamente successivo all'ultimo byte valido nel file.
AllocationSize
Dimensioni di allocazione dei file in byte. Il valore di questo campo è un multiplo intero delle dimensioni del cluster.
FileAttributes
Attributi del file.
Bandiera | Significato |
---|---|
FILE_ATTRIBUTE_NORMAL | È necessario creare un file con attributi standard. |
FILE_ATTRIBUTE_READONLY | È necessario creare un file di sola lettura. |
FILE_ATTRIBUTE_HIDDEN | Deve essere creato un file nascosto. |
FILE_ATTRIBUTE_SYSTEM | È necessario creare un file di sistema. |
FILE_ATTRIBUTE_ARCHIVE | Il file deve essere contrassegnato in modo che venga archiviato. |
FILE_ATTRIBUTE_TEMPORARY | È necessario creare un file temporaneo. |
FileNameLength
Lunghezza, espressa in byte, del nome file contenuto nel fileName membro.
FileId
Numero di riferimento del file. Il file system genera questo numero e lo assegna al file. Per i file system che non supportano FileId, questo campo è impostato su 0 e ignorato.
LockingTransactionId
Valore GUID della transazione con questo file bloccato per la modifica. Il file system genera e assegna questo valore.
TxInfoFlags
OR bit per bit pari a zero o più dei valori seguenti.
Valore | Significato |
---|---|
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED 0x00000001 | Il file è bloccato per la modifica da parte di una transazione. L'ID della transazione deve essere contenuto nel membro LockingTransactionId se questo flag è impostato. |
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_TO_TX 0x00000002 | Il file è visibile agli enumeratori transazioni della directory il cui ID transazione si trova nel membro LockingTransactionId. |
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_OUTSIDE_TX 0x00000004 | Il file è visibile agli enumeratori transazioni della directory diversi da quello il cui ID transazione si trova nell'membro LockingTransactionId ed è visibile agli enumeratori non transazioni della directory. |
Se il flag FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED non è impostato, gli altri flag non devono essere impostati. Se vengono impostati flag diversi da FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED, è necessario impostare il flag FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED.
FileName[1]
Sequenza di caratteri Unicode contenente il nome del file.
Osservazioni
La struttura FILE_ID_GLOBAL_TX_DIR_INFORMATION può essere implementata per i file system che restituiscono il flag FILE_SUPPORTS_TRANSACTIONS in risposta a una query usando una struttura FILE_FS_ATTRIBUTE_INFORMATION. Non deve essere implementato per i file system che non restituiscono tale flag.
Se il flag FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED non è impostato in TxInfoFlags, LockingTransactionId viene ignorato.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 7 |
intestazione | ntifs.h (include FltKernel.h, Ntifs.h) |