IOCTL_DISK_SET_DRIVE_LAYOUT IOCTL (winioctl.h)
根据驱动器布局和分区信息数据的指定对磁盘进行分区。
若要执行此操作,请使用下面指定的参数调用 DeviceIoControl 函数。
注意
IOCTL_DISK_SET_DRIVE_LAYOUT 已被 IOCTL_DISK_SET_DRIVE_LAYOUT_EX取代,后者检索 AT 和 EFI (可扩展固件接口) 分区的布局信息。
若要执行此操作,请使用以下参数调用 DeviceIoControl 函数。 必须对驱动器具有写入访问权限才能使用此控制代码。
BOOL DeviceIoControl(
(HANDLE) hDevice, // handle to device
IOCTL_DISK_SET_DRIVE_LAYOUT, // 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
);
注解
如果分区位于格式化为类型主启动记录 (MBR) 的磁盘上,则每个 MBR 磁盘的分区大小总计不能超过 2 TB。 例如,MBR 类型的磁盘可以有一个 2-TB 分区、两个 1 TB 分区,或者任何总计不超过 2 TB 的组合。 如果需要更多空间,则应使用格式化为 GUID 分区表类型 (GPT) 的磁盘。 如果使用第三方分区工具在 MBR 类型大于 2 TB 的磁盘上绕过此限制,则通过磁盘分区 IOCTL 控制代码的配置操作将受到限制。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows XP [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | winioctl.h (包括 Windows.h) |