IOCTL_DISK_GET_PARTITION_INFO_EX IOCTL (winioctl.h)

ディスク パーティションの種類、サイズ、性質に関する拡張情報を取得します。

この操作を実行するには、次のパラメーターを使用して DeviceIoControl 関数を呼び出します。

BOOL DeviceIoControl(
  (HANDLE) hDevice,                 // handle to a partition
  IOCTL_DISK_GET_PARTITION_INFO_EX, // dwIoControlCode
  NULL,                             // lpInBuffer
  0,                                // nInBufferSize
  (LPVOID) lpOutBuffer,             // output buffer
  (DWORD) nOutBufferSize,           // size of output buffer
  (LPDWORD) lpBytesReturned,        // number of bytes returned
  (LPOVERLAPPED) lpOverlapped       // OVERLAPPED structure
);

注釈

IOCTL_DISK_GET_PARTITION_INFO_EX制御コードは、ベーシック ディスクでサポートされています。 これは、ブート ディスクまたはシステム ディスクであるダイナミック ディスク、またはパーティション テーブルにエントリが保持されているダイナミック ディスクでのみサポートされます。 DiskPart.exe コマンド RETAIN を使用して、他の動的単純パーティションに対してこれを行うことができます。

ディスクのサポートは次のように要約できます。

ディスクの種類 IOCTL_DISK_GET_PARTITION_INFO IOCTL_DISK_GET_PARTITION_INFO_EX
基本マスター ブート レコード (MBR) Yes Yes
基本的な GUID パーティション テーブル (GPT) いいえ Yes
動的 MBR ブート/システム Yes Yes
動的 MBR データ はい いいえ
動的 GPT ブート/システム いいえ Yes
動的 GPT データ いいえ いいえ

現在、GPT は 64 ビット システムでのみサポートされています。

パーティションがタイプ マスター ブート レコード (MBR) としてフォーマットされたディスク上にある場合、パーティション サイズの合計は制限されます。 詳細については、 IOCTL_DISK_SET_DRIVE_LAYOUTの「解説」セクションを参照してください。

要件

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

こちらもご覧ください