次の方法で共有


FILE_STAT_BASIC_INFORMATION構造体 (ntifs.h)

FILE_STAT_BASIC_INFORMATION には、ファイルに関する基本的なメタデータが含まれています。

構文

typedef struct _FILE_STAT_BASIC_INFORMATION {
  LARGE_INTEGER FileId;
  LARGE_INTEGER CreationTime;
  LARGE_INTEGER LastAccessTime;
  LARGE_INTEGER LastWriteTime;
  LARGE_INTEGER ChangeTime;
  LARGE_INTEGER AllocationSize;
  LARGE_INTEGER EndOfFile;
  ULONG         FileAttributes;
  ULONG         ReparseTag;
  ULONG         NumberOfLinks;
  ULONG         DeviceType;
  ULONG         DeviceCharacteristics;
  ULONG         Reserved;
  LARGE_INTEGER VolumeSerialNumber;
  FILE_ID_128   FileId128;
} FILE_STAT_BASIC_INFORMATION, *PFILE_STAT_BASIC_INFORMATION;

メンバーズ

FileId

ファイルの識別子を指定します。

CreationTime

ファイルの作成時刻を指定します。

LastAccessTime

ファイルが最後にアクセスされた時刻を指定します。

LastWriteTime

ファイルが最後に書き込まれた時刻を指定します。

ChangeTime

ファイルが最後に変更された時刻を指定します。

AllocationSize

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

EndOfFile

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

FileAttributes

ファイル属性。次の任意の有効な組み合わせにすることができます。

属性 価値
FILE_ATTRIBUTE_READONLY 0x00000001
FILE_ATTRIBUTE_HIDDEN 0x00000002
FILE_ATTRIBUTE_SYSTEM 0x00000004
FILE_ATTRIBUTE_DIRECTORY 0x00000010
FILE_ATTRIBUTE_ARCHIVE 0x00000020
FILE_ATTRIBUTE_NORMAL 0x00000080

ReparseTag

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

NumberOfLinks

ファイルへのリンクの数を指定します。

DeviceType

基になるデバイスの種類に応じて、ドライバー IoCreateDevice を呼び出すときに設定します。 詳細については、「デバイスの種類の指定」を参照してください。

DeviceCharacteristics

デバイスの特性。 関連する値の説明については、DEVICE_OBJECTを参照してください。

Reserved

システム用に予約されています。

VolumeSerialNumber

ファイルが配置されているボリュームのシリアル番号。

FileId128

ファイルの 128 バイトのファイル参照番号。 この番号が生成され、ファイル システムによってファイルに割り当てられます。

備考

この情報は、次のいずれかの方法で照会できます。

  • ZwQueryDirectoryFileを呼び出し、FileStatBasicInformation FileInformationClass の値として渡し、呼び出し元によって割り当てられた FILE_ID_EXTD_DIR_INFORMATION構造化バッファー FileInformationの値として渡します。

  • 主要な関数コード IRP_MJ_DIRECTORY_CONTROL とマイナー関数コード IRP_MN_QUERY_DIRECTORYを含む IRP を作成します。

この情報を照会するために、特定のアクセス権は必要ありません。

ファイル参照番号 (ファイル ID とも呼ばれます) は、静的ファイル システム内でのみ一意であることが保証されます。 ファイル システムは自由に再利用できるため、時間の経過と同時に一意であるとは限りません。 また、一定の状態を保つ保証もありません。 たとえば、FAT ファイル システムは、ディスク上のファイルのディレクトリ エントリ レコード (DIRENT) のバイト オフセットからファイルのファイル参照番号を生成します。 最適化によって、このバイト オフセットが変更される可能性があります。 したがって、FAT ファイル参照番号は時間の経過と同時に変化する可能性があります。

すべての日付と時刻は、システム時刻の絶対形式です。 絶対システム時間は、1601 年の開始以降の 100 ナノ秒間隔の数です。

この構造体は、LONGLONG (8 バイト) 境界に配置する必要があります。 バッファーにこれらの構造体が 2 つ以上含まれている場合、NextEntryOffset 各エントリの値 (最後を除く) は 8 バイトの境界に置きます。

必要条件

要件 価値
サポートされる最小クライアント Windows 11 バージョン 24H2
ヘッダー ntifs.h

関連項目

FILE_INFORMATION_CLASS

ZwQueryInformationByName