关于获取硬盘逻辑盘符的问题。

yelang 2011-08-22 02:49:16
我想获取硬盘的逻辑盘符,用 string[] dirs = Directory.GetLogicalDrives();和ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");ManagementObjectCollection disks = diskClass.GetInstances();获取到的全都是所有磁盘的盘符,有没有什么方法,可以只获取硬盘的盘符,其他的,如光驱、U盘的,我都不要啊?
...全文
213 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yelang 2011-08-22
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wxm3630478 的回复:]
C# code


//难道是这个
DriveInfo[] s = DriveInfo.GetDrives();
foreach (DriveInfo drive in s)
{
if (drive.DriveType == DriveType.Fixed)
{
MessageBox……
[/Quote]

是的,就是这个。
wxm3630478 2011-08-22
  • 打赏
  • 举报
回复

//难道是这个
DriveInfo[] s = DriveInfo.GetDrives();
foreach (DriveInfo drive in s)
{
if (drive.DriveType == DriveType.Fixed)
{
MessageBox.Show("当前插入的盘符为:" + drive.Name.ToString());
}
}
yelang 2011-08-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 wxr0323 的回复:]
private void button1_Click(object sender, System.EventArgs e)
{
ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
ManagementObjectCollection disks = diskClass.GetInstances(……
[/Quote]
你这个方法我试过了,同样是获得所有盘符。另外就是多了一个硬盘的序列号。

不过问题我已经解决了。用
 DriveInfo[] dis = DriveInfo.GetDrives();

string str = "";
string str1 = "";
foreach (DriveInfo di in dis)
{
if (di.DriveType == DriveType.Fixed)//磁盘类型为硬盘。
{
str += di.Name;
}
}

这个就可以解决了。
子夜__ 2011-08-22
  • 打赏
  • 举报
回复
private void button1_Click(object sender, System.EventArgs e)
{
ManagementClass diskClass = new ManagementClass("Win32_LogicalDisk");
ManagementObjectCollection disks = diskClass.GetInstances();
foreach(ManagementObject disk in disks)
{
try
{
Console.WriteLine(disk["Name"].ToString());

}
catch(Exception exc)
{
MessageBox.Show(exc.Message, "提示");
}
}

ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT * FROM Win32_PhysicalMedia");
String hardDiskID=null;
foreach (ManagementObject mo in searcher.Get())
{
hardDiskID = mo["SerialNumber"].ToString().Trim();
break;
}

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧