ntifs.h) (FILE_ID_GLOBAL_TX_DIR_INFORMATION 结构
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
以下值的零个或多个按位 OR。
值 | 含义 |
---|---|
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED 0x00000001 | 文件被事务锁定,以供修改。 如果设置了此标志,事务的 ID 必须包含在 LockingTransactionId 成员中。 |
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_TO_TX 0x00000002 | 文件对事务 ID 位于 LockingTransactionId 成员中的目录的事务处理枚举器可见。 |
FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_VISIBLE_OUTSIDE_TX 0x00000004 | 文件对目录的事务处理枚举器(事务 ID 位于 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]
包含文件名的 Unicode 字符序列。
注解
对于返回 FILE_SUPPORTS_TRANSACTIONS 标志以响应使用 FILE_FS_ATTRIBUTE_INFORMATION 结构的查询的文件系统,可以实现 FILE_ID_GLOBAL_TX_DIR_INFORMATION 结构。 对于不返回该标志的文件系统,不得实现它。
如果未在 TxInfoFlags 中设置FILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED标志,则忽略 LockingTransactionId 。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 |
标头 | ntifs.h (包括 FltKernel.h、Ntifs.h) |