各位朋友,我想要问一下如何获取计算机的所有物理磁盘,不包括可移动的存储设备。
我有一段代码可以获取:
try
{
ManagementObject disk = new ManagementObject(
"win32_logicaldisk.deviceid=\"c:\"");
disk.Get();
string totalByte = disk["FreeSpace"].ToString();
long freeDiskSpaceMb = Convert.ToInt64(totalByte) / 1024 / 1024;
textBox1.AppendText("C:磁盘剩余空间:" + freeDiskSpaceMb + "M \n");
disk = new ManagementObject(
"win32_logicaldisk.deviceid=\"d:\"");
disk.Get();
totalByte = disk["FreeSpace"].ToString();
freeDiskSpaceMb = Convert.ToInt64(totalByte) / 1024 / 1024;
textBox1.AppendText("D:磁盘剩余空间:" + freeDiskSpaceMb + "M \n");
disk = new ManagementObject(
"win32_logicaldisk.deviceid=\"e:\"");
disk.Get();
totalByte = disk["FreeSpace"].ToString();
freeDiskSpaceMb = Convert.ToInt64(totalByte) / 1024 / 1024;
textBox1.AppendText("E:磁盘剩余空间:" + freeDiskSpaceMb + "M \n");
disk = new ManagementObject(
"win32_logicaldisk.deviceid=\"f:\"");
disk.Get();
totalByte = disk["FreeSpace"].ToString();
freeDiskSpaceMb = Convert.ToInt64(totalByte) / 1024 / 1024;
textBox1.AppendText("F:磁盘剩余空间:" + freeDiskSpaceMb + "M \n");
}
catch (Exception)
{
return;
}
就是这段代码。
但是我发现这段代码不足的是只能一个一个的取,不知道各位有没有更好的获取方法把所有的硬盘名称一下全取出来,如果有的话,还望多多指教。
[此贴子已经被作者于2007-10-16 10:38:11编辑过]