次の方法で共有


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エントリが配置されます。 値が 0 の場合は、このエントリの後に他のエントリがないことを示します。

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

次の値の 0 個以上のビットごとの 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 文字のシーケンス。

注意 末尾に null 区切り記号があると仮定するのではなく、FileNameLength を使用してファイル名の長さを判断します。
 

備考

FILE_ID_GLOBAL_TX_DIR_INFORMATION 構造体は、FILE_FS_ATTRIBUTE_INFORMATION 構造体を使用するクエリに応答してFILE_SUPPORTS_TRANSACTIONS フラグを返すファイル システムに実装できます。 このフラグを返さないファイル システムには実装しないでください。

TxInfoFlags でFILE_ID_GLOBAL_TX_DIR_INFO_FLAG_WRITELOCKED フラグ設定されていない場合、lockingTransactionId は無視されます。

必要条件

要件 価値
サポートされる最小クライアント Windows 7
ヘッダー ntifs.h (FltKernel.h、Ntifs.h を含む)