структура FILE_ID_GLOBAL_TX_DIR_INFORMATION (ntifs.h)
Структура FILE_ID_GLOBAL_TX_DIR_INFORMATION содержит сведения о видимости транзакций для файлов в каталоге.
Синтаксис
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;
Члены
NextEntryOffset
Смещение байтов от начала этой записи, в котором находится следующая FILE_ID_FULL_DIR_INFORMATION запись, если в буфере присутствует несколько записей. Значение нуля указывает, что другие записи не следуют этому.
FileIndex
Смещение байтов файла в родительском каталоге. Для файловых систем, в которых положение файла в родительском каталоге не исправлено и может быть изменено для поддержания порядка сортировки, это поле должно иметь значение 0 и игнорируется.
CreationTime
Время создания файла.
LastAccessTime
При последнем обращении к файлу.
LastWriteTime
Последняя запись сведений в файл.
ChangeTime
При последнем изменении файла.
EndOfFile
Абсолютное новое положение конца файла в виде смещения байтов от начала файла. EndOfFile указывает смещение к байту сразу после последнего допустимого байта в файле.
AllocationSize
Размер выделения файла в байтах. Значение этого поля является целым числом, кратным размером кластера.
FileAttributes
Атрибуты файла.
Флаг | Значение |
---|---|
FILE_ATTRIBUTE_NORMAL | Необходимо создать файл со стандартными атрибутами. |
FILE_ATTRIBUTE_READONLY | Необходимо создать файл, доступный только для чтения. |
FILE_ATTRIBUTE_HIDDEN | Необходимо создать скрытый файл. |
FILE_ATTRIBUTE_SYSTEM | Необходимо создать системный файл. |
FILE_ATTRIBUTE_ARCHIVE | Файл должен быть помечен таким образом, чтобы он был архивирован. |
FILE_ATTRIBUTE_TEMPORARY | Необходимо создать временный файл. |
FileNameLength
Длина в байтах имени файла, содержащегося в элементе FileName.
FileId
Номер ссылки на файл. Файловая система создает это число и назначает его файлу. Для файловой системы, которые не поддерживают FileId, это поле имеет значение 0 и игнорируется.
LockingTransactionId
Значение GUID транзакции, которая содержит этот файл, заблокированный для изменения. Файловая система создает и назначает это значение.
TxInfoFlags
Битовая или более нулевая или более следующих значений.
Ценность | Значение |
---|---|
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED 0x00000001 | Файл заблокирован для изменения транзакцией. Идентификатор транзакции должен содержаться в элементе LockingTransactionId, если этот флаг задан. |
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_TO_TX 0x00000002 | Файл отображается для трансактированных перечислителей каталога, идентификатор транзакции которого находится в элементе LockingTransactionId. |
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_OUTSIDE_TX 0x00000004 | Файл отображается для трансактированных перечислителей каталога, отличного от идентификатора транзакции, который находится в элементе LockingTransactionId, и он отображается для нетрансактированных перечислителей каталога. |
Если флаг FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED не задан, другие флаги не должны быть заданы. Если заданы флаги, отличные от FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED, необходимо задать флаг FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED.
FileName[1]
Последовательность символов Юникода, содержащая имя файла.
Замечания
Структура FILE_ID_GLOBAL_TX_DIR_INFORMATION может быть реализована для файловой системы, возвращающей флаг FILE_SUPPORTS_TRANSACTIONS в ответ на запрос с помощью структуры FILE_FS_ATTRIBUTE_INFORMATION. Он не должен быть реализован для файловой системы, которые не возвращают этот флаг.
Если флаг FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED не задан в TxInfoFlags, LockingTransactionId игнорируется.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 7 |
заголовка | ntifs.h (include FltKernel.h, Ntifs.h) |