Windows 如何通过WMI从扩展分区获取所有未分配的空间?

Windows 如何通过WMI从扩展分区获取所有未分配的空间?,windows,wmi,disk-partitioning,Windows,Wmi,Disk Partitioning,我正在尝试获取磁盘上所有未分配的空间(作为对的列表)。 只要磁盘上没有任何扩展分区,一切都很好-我只列出与所选的Win32\u DiskDrive关联的Win32\u DiskPartition并分析它们的偏移量和大小,以找出它们之间的差距 但是,如果有一个扩展分区,事情就会变得复杂——它就像一个黑匣子,内部分区不在与myWin32\U DiskDrive关联的对象中。我尝试列出扩展分区的关联对象,但没有链接到扩展分区的“内部”Win32\u DiskPartitions,只有Win32\u L

我正在尝试获取磁盘上所有未分配的空间(作为对的列表)。 只要磁盘上没有任何扩展分区,一切都很好-我只列出与所选的
Win32\u DiskDrive
关联的
Win32\u DiskPartition
并分析它们的偏移量和大小,以找出它们之间的差距

但是,如果有一个扩展分区,事情就会变得复杂——它就像一个黑匣子,内部分区不在与my
Win32\U DiskDrive
关联的对象中。我尝试列出扩展分区的关联对象,但没有链接到扩展分区的“内部”
Win32\u DiskPartition
s,只有
Win32\u LogicalDisk
s,但它们没有提供分区实际几何结构的任何信息

为此,它尝试使用diskpart,但它将所有分区大小舍入为GB,我需要它们精确。此外,它还依赖于语言环境,因此很难解析输出(我的应用程序需要尽可能独立于语言环境)