Hi,


At present time our customers are widely using the GUID Partition Table (GPT).
GPT provides a more flexible mechanism for partitioning disks than the older
Master Boot Record (MBR) partitioning scheme that has been common to PCs.



The problem is that the our client fails calling the DeviceIoControl()
function
with the ioctl IOCTL_DISK_GET_PARTITION_INFO for a GPT partition.
It is obvious that the extended ioctl IOCTL_DISK_GET_PARTITION_INFO_EX
should be used here.

According to MSDN (http://msdn2.microsoft.com/en-us/library/aa365180.aspx)
the IOCTL_DISK_GET_PARTITION_INFO_EX control code is supported on basic
disks. It is only supported on dynamic disksthat are boot or system disks, or
have
retained entries in the partition table. The DiskPart.exe command RETAIN can
be used to do this for other dynamic simple partitions.The disk support can
be summarized as follows.
Disk type IOCTL_DISK_GET_PARTITION_INFO
IOCTL_DISK_GET_PARTITION_INFO_EX
Basic MBR Yes
Yes
Basic GPT No
Yes
Dynamic MBR boot/system Yes Yes
Dynamic MBR data Yes
No
Dynamic GPT boot/system No Yes
Dynamic GPT data No
No



So, I am concerned about "dynamic MBR data" which is supported by
IOCTL_DISK_GET_PARTITION_INFO but is NOT supported by its _EX version.

Any ideas?


Thanks,
Andrei Nehay
Tivoli Storage Manager Client Development
nehaya@us.ibm.com

RE: IOCTL_DISK_GET_PARTITION_INFO_EX on Dynamic MBR data by AndreiNehay

AndreiNehay
Thu Jul 19 02:52:04 CDT 2007

Guys,

Sorry that I bother you again. Do you have any ideas concerning Dynamic MBR
data?


Thanks,
Andrei Nehay
Tivoli Storage Manager Client Development
nehaya@us.ibm.com