FILE_STORAGE_INFO構造体 (winbase.h)

ファイルのディレクトリ情報が含まれます。 FileInformationClass パラメーターに FileStorageInfo が渡されると、この構造体は GetFileInformationByHandleEx 関数から返されます。

構文

typedef struct _FILE_STORAGE_INFO {
  ULONG LogicalBytesPerSector;
  ULONG PhysicalBytesPerSectorForAtomicity;
  ULONG PhysicalBytesPerSectorForPerformance;
  ULONG FileSystemEffectivePhysicalBytesPerSectorForAtomicity;
  ULONG Flags;
  ULONG ByteOffsetForSectorAlignment;
  ULONG ByteOffsetForPartitionAlignment;
} FILE_STORAGE_INFO, *PFILE_STORAGE_INFO;

メンバー

LogicalBytesPerSector

物理ストレージによって報告されるセクターあたりの論理バイト数。 これは、キャッシュされていない I/O がサポートされる最小サイズです。

PhysicalBytesPerSectorForAtomicity

アトミック書き込みのセクターあたりのバイト数。 これより小さい書き込みでは、ブロック全体をアトミックに書き込む前に読み取りが必要になる場合があります。

PhysicalBytesPerSectorForPerformance

書き込みに最適なパフォーマンスを実現するセクターあたりのバイト数。

FileSystemEffectivePhysicalBytesPerSectorForAtomicity

これは、ファイル システムによってアトミックに使用されるブロックのサイズです。 これは、物理メディアの最適なサイズと、既存のコードと構造の適応が容易なサイズとのトレードオフである可能性があります。

Flags

このメンバーには、ストレージの配置に関する情報を指定するフラグの組み合わせを含めることができます。

意味
STORAGE_INFO_FLAGS_ALIGNED_DEVICE
0x00000001
このフラグを設定すると、ストレージ デバイスの論理セクターが物理セクターの境界に揃っていることを示します。
STORAGE_INFO_FLAGS_PARTITION_ALIGNED_ON_DEVICE
0x00000002
このフラグを設定すると、パーティションがストレージ デバイス上の物理セクターの境界に揃っていることを示します。

ByteOffsetForSectorAlignment

最初の論理セクターが配置される最初の物理セクター内の論理セクター オフセット (バイト単位)。 この値が STORAGE_INFO_OFFSET_UNKNOWN (0xffffffff ) に設定されている場合、このフィールドを計算するための情報が不足していました。

ByteOffsetForPartitionAlignment

ストレージ デバイスの物理セクター境界にパーティションを配置するために使用されるオフセット (バイト単位)。 この値が STORAGE_INFO_OFFSET_UNKNOWN (0xffffffff ) に設定されている場合、このフィールドを計算するための情報が不足していました。

注釈

ボリュームが異なるプロパティ (ミラー化、スパン、ストライプ、RAID 構成など) を持つストレージ デバイスの上に構築されている場合、返されるサイズは、基になるストレージ デバイスの最大サイズのサイズです。

要件

   
サポートされている最小のクライアント Windows 8 [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2012 [デスクトップ アプリ |UWP アプリ]
ヘッダー winbase.h (Windows.h を含む)

こちらもご覧ください

FILE_INFO_BY_HANDLE_CLASS

ファイル管理の構造

GetFileInformationByHandleEx