【发布时间】:2015-01-19 07:24:48
【问题描述】:
我目前正在处理一个需要使用 WMI(Windows 管理界面)的项目。我需要找到硬盘和逻辑磁盘以及有关它们的一些信息。例如我使用以下代码获取物理磁盘:
hd = new HardDrive();
mosDisks = new ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive WHERE Model = '"
+ disksModel[i] + "'");
foreach(ManagementObject moDisk in mosDisks.Get())
{
string vari = moDisk["DeviceID"].ToString();
hd.HardDiskModel = moDisk["Model"].ToString();
hd.HardDiskType = moDisk["InterfaceType"].ToString();
hd.HardDiskStatus = moDisk.Properties["Status"].Value.ToString();
hd.HardDiskSize = moDisk.Properties["Size"].Value.ToString();
hd.HardDiskName = moDisk.Properties["Name"].Value.ToString();
hd.HardDiskSerialNo = moDisk.Properties["SerialNumber"].Value.ToString();
}
然后是另一个查询以获取逻辑磁盘。
我唯一想知道的是:如何确保获得特定硬盘的逻辑磁盘?
例如,如果我有 3 个硬盘(HD1、HD2、HD3)和 8 个逻辑磁盘(c: 到 j:),我如何确保在代码中例如 c: 和 @ 987654325@属于HD1,e:,f:,g:和h:属于HD2,i:和j:属于HD3?
【问题讨论】: