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;

Members

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. Il valore 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 del file come offset di byte dall'inizio del file. EndOfFile specifica l'offset al byte immediatamente successivo all'ultimo byte valido nel file.

AllocationSize

Dimensione di allocazione dei file in byte. Il valore di questo campo è un multiplo intero delle dimensioni del cluster.

FileAttributes

Attributi del file.

Contrassegno Significato
FILE_ATTRIBUTE_NORMAL È necessario creare un file con attributi standard.
FILE_ATTRIBUTE_READONLY È necessario creare un file di sola lettura.
FILE_ATTRIBUTE_HIDDEN È necessario creare 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, in byte, del nome file contenuto nel membro FileName .

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 diversa da quello il cui ID transazione si trova nel membro LockingTransactionId ed è visibile agli enumeratori non transazionati 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 di FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED.

FileName[1]

Sequenza di caratteri Unicode contenente il nome del file.

Nota Usare FileNameLength per determinare la lunghezza del nome del file anziché presumere la presenza di un delimitatore Null finale.
 

Commenti

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.

Requisiti

Requisito Valore
Client minimo supportato Windows 7
Intestazione ntifs.h (include FltKernel.h, Ntifs.h)