FILE_ID_EXTD_DIR_INFO 構造体 (winbase.h)

ファイルの識別情報が含まれます。 FileIdExtdDirectoryInfo (0x13) または FileIdExtdDirectoryRestartInfo (0x14) が FileInformationClass パラメーターに渡されると、この構造体は GetFileInformationByHandleEx 関数から返されます。

構文

typedef struct _FILE_ID_EXTD_DIR_INFO {
  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;
  ULONG         EaSize;
  ULONG         ReparsePointTag;
  FILE_ID_128   FileId;
  WCHAR         FileName[1];
} FILE_ID_EXTD_DIR_INFO, *PFILE_ID_EXTD_DIR_INFO;

メンバー

NextEntryOffset

返される次の FILE_ID_EXTD_DIR_INFO 構造体のオフセット。 このエントリの後に他のエントリがない場合は、ゼロ (0) が含まれます。

FileIndex

親ディレクトリ内のファイルのバイト オフセット。 このメンバーは、NTFS などのファイル システムでは未定義であり、親ディレクトリ内のファイルの位置は固定されず、並べ替え順序を維持するためにいつでも変更できます。

CreationTime

ファイルが作成された時刻。

LastAccessTime

ファイルが最後にアクセスされた時刻。

LastWriteTime

ファイルが最後に書き込まれた時刻。

ChangeTime

ファイルが最後に変更された時刻。

EndOfFile

ファイルの先頭からファイルの末尾までのバイト オフセットとしての新しいファイルの絶対位置。 この値は 0 から始まるため、実際にはファイル内の最初のフリー バイトを参照します。 つまり、 EndOfFile は、ファイル内の最後の有効なバイトの直後にあるバイトへのオフセットです。

AllocationSize

ファイルに割り当てられるバイト数。 この値は、通常、基になる物理デバイスのセクターまたはクラスター サイズの倍数です。

FileAttributes

ファイル属性。 このメンバーには、次の属性の任意の有効な組み合わせを指定できます。

意味
FILE_ATTRIBUTE_ARCHIVE
32 (0x20)
アーカイブ ファイルまたはディレクトリであるファイルまたはディレクトリ。 通常、アプリケーションはこの属性を使い、バックアップまたは削除対象のファイルにマークを付けます。 
FILE_ATTRIBUTE_COMPRESSED
2048 (0x800)
圧縮されたファイルまたはディレクトリ。 ファイルの場合、ファイル内のすべてのデータが圧縮されます。 ディレクトリの場合、新しく作成されたファイルとサブディレクトリの既定値は圧縮です。
FILE_ATTRIBUTE_DEVICE
64 (0x40)
この値はシステムで使うために予約されています。
FILE_ATTRIBUTE_DIRECTORY
16 (0x10)
ディレクトリを識別するハンドル。
FILE_ATTRIBUTE_ENCRYPTED
16384 (0x4000)
暗号化されるファイルまたはディレクトリ。 ファイルの場合、ファイル内のすべてのデータ ストリームが暗号化されます。 ディレクトリの場合、新しく作成されたファイルとサブディレクトリの既定値は暗号化です。
FILE_ATTRIBUTE_HIDDEN
2 (0x2)
ファイルまたはディレクトリは非表示です。 通常のディレクトリ一覧には含まれません。
FILE_ATTRIBUTE_NORMAL
128 (0x80)
他の属性が設定されていないファイル。 この属性は、単独で使った場合にのみ有効です。
FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
8192 (0x2000)
ファイルまたはディレクトリには、コンテンツ インデックス サービスによってインデックスが付けられません。
FILE_ATTRIBUTE_OFFLINE
4096 (0x1000)
ファイルのデータはすぐに使用できません。 この属性は、ファイル データが物理的にオフライン ストレージに移動されたことを示します。 この属性はリモート記憶域 (階層型ストレージ管理ソフトウェア) によって使われます。 アプリケーションはこの属性を任意に変更しないでください。
FILE_ATTRIBUTE_READONLY
1 (0x1)
読み取り専用のファイル。 アプリケーションはこのファイルを読み取ることができますが、書き込んだり削除したりすることはできません。 この属性は、ディレクトリでは無視されます。 詳細については、「Windows Server 2003、Windows XP、Windows Vista、または Windows 7 でフォルダーの読み取り専用属性やシステム属性を表示または変更できない」を参照してください。
FILE_ATTRIBUTE_REPARSE_POINT
1024 (0x400)
再解析ポイントが関連付けられているファイルまたはディレクトリ、またはシンボリック リンクであるファイル。
FILE_ATTRIBUTE_SPARSE_FILE
512 (0x200)
スパース ファイルであるファイル。
FILE_ATTRIBUTE_SYSTEM
4 (0x4)
オペレーティング システムがその一部を使う、または排他的に使うファイルまたはディレクトリ。
FILE_ATTRIBUTE_TEMPORARY
256 (0x100)
一時的なストレージとして使われているファイル。 十分なキャッシュ メモリを使用できる場合、ファイル システムは大容量記憶装置へのデータの書き戻しを回避します。なぜなら、通常はハンドルが閉じられると、アプリケーションは一時ファイルを削除するからです。 このようなシナリオでは、システムはデータの書き込みを完全に回避できます。 それ以外の場合は、ハンドルが閉じられた後にデータが書き込まれます。
FILE_ATTRIBUTE_VIRTUAL
65536 (0x10000)
この値はシステムで使うために予約されています。

FileNameLength

ファイル名の長さ。

EaSize

ファイルの拡張属性のサイズ。

ReparsePointTag

FileAttributes メンバーに FILE_ATTRIBUTE_REPARSE_POINT 属性が含まれている場合、このメンバーは再解析ポイント タグを指定します。

それ以外の場合、この値は未定義であり、使用しないでください。

詳細については、「 ポイント タグの再解析」を参照してください。

IO_REPARSE_TAG_CSV (0x80000009)

IO_REPARSE_TAG_DEDUP (0x80000013)

IO_REPARSE_TAG_DFS (0x8000000A)

IO_REPARSE_TAG_DFSR (0x80000012)

IO_REPARSE_TAG_HSM (0xC0000004)

IO_REPARSE_TAG_HSM2 (0x80000006)

IO_REPARSE_TAG_MOUNT_POINT (0xA0000003)

IO_REPARSE_TAG_NFS (0x80000014)

IO_REPARSE_TAG_SIS (0x80000007)

IO_REPARSE_TAG_WIM (0x80000008)

FileId

ファイル ID。

FileName[1]

ファイル名文字列の最初の文字。 その後、メモリ内で文字列の残りの部分が続きます。

要件

要件
サポートされている最小のクライアント サポートなし
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリのみ]
Header winbase.h (Windows.h を含む)

こちらもご覧ください

FILE_ID_128

FILE_INFO_BY_HANDLE_CLASS

ファイル管理の構造体

GetFileInformationByHandleEx