IOCTL_DISK_SET_DRIVE_LAYOUT DeviceIoControl操作按驱动器布局和分区信息数据指定分区磁盘。
dwIoControlCode = IOCTL_DISK_SET_DRIVE_LAYOUT; //操作代码
lpInBuffer; //输入缓冲区的地址
nInBufferSize; //输入缓冲区的大小
lpOutBuffer = NULL; //输出缓冲区的地址不曾用过;必须为NULL
nOutBufferSize = 0; //输出缓冲区的大小不曾用过;必须为零
lpBytesReturned; //输出的实际字节的地址
参数
【lpInBuffer】
指向包含驱动器布局和分区信息数据的缓冲区。数据以DRIVE_LAYOUT_INFORMATION数据结构和一系列PARTITION_INFORMATION数据结构的形式存在,驱动器中每个建议分区的数据结构之一。
【nInBufferSize】
指定由【lpInBuffer】指向的缓冲区的大小(以字节为单位),该大小必须足够大以包含一个DRIVE_LAYOUT_INFORMATION数据结构以及与驱动器上的建议分区一样多的PARTITION_INFORMATION数据结构。
【lpOutBuffer】
指向输出缓冲区。不用于此操作。设置为NULL。
【nOutBufferSize】
指定【lpOutBuffer】指向的缓冲区的大小(以字节为单位)。不用于此操作。设置为零。
【lpBytesReturned】
指向DWORD,它接收存储在【lpOutBuffer】中的数据的实际大小(以字节为单位)。
返回值
如果操作成功,DeviceIoControl返回TRUE。
如果操作失败,DeviceIoControl返回FALSE。要获取扩展错误信息,请调用GetLastError.
备注
该设备I / O控制操作用于磁盘设备。但是,软盘驱动程序不需要处理此操作。
也可以看看
DeviceIoControl, DRIVE_LAYOUT_INFORMATION, IOCTL_DISK_GET_DRIVE_LAYOUT, PARTITION_INFORMATION