ManagementClass devs = new ManagementClass(@"Win32_Diskdrive");
ManagementObjectCollection moc = devs.GetInstances();
foreach (ManagementObject mo in moc)
{
UInt32 physicalDiskNumber = (UInt32)mo["Index"];
UInt64 diskSize = (UInt64)mo["Size"];
foreach (ManagementObject b in mo.GetRelated("Win32_DiskPartition"))
{
//b["Name"] gives something like "Disk #0, Partition #0"
string[] elems = b["Name"].ToString().Split(',');
int partitionNumber = Int32.Parse(elems[1].Replace("Partition #", "").Trim());
ulong size = (ulong) b["Size"];
}
}
这是我的代码,用于检索所有磁盘上的所有分区。但是,它不会检索Microsoft保留分区。我想检索磁盘上的所有分区,包括MSR分区。我怎样才能在C#中实现这个目标?