IOCTL_DISK_SET_DRIVE_LAYOUT_EX IOCTL (winioctl.h)

指定したドライブ レイアウトとパーティション情報データに従ってディスクをパーティション分割します。

この操作を実行するには、次のパラメーターを使用して DeviceIoControl 関数を呼び出します。 この制御コードを使用するには、ドライブへの書き込みアクセス権が必要です。

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

解説

GUID パーティション テーブル (GPT) をCREATE_DISK構造体のPARTITION_STYLEとして指定する場合、アプリケーションは MSR パーティションの到着を待機してから、IOCTL_DISK_SET_DRIVE_LAYOUT_EX制御コードを送信する必要があります。 デバイス通知の詳細については、「 RegisterDeviceNotification」を参照してください。

拡張ブート レコード (EBR) を作成して操作する場合、EBR の最初のエントリは EBR の直後にある論理ドライブを指し、次の EBR は現在の論理ドライブの末尾の後、次の論理ドライブの開始前に存在する必要があります。

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

要件

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

関連項目