使用C#获取盘符

来源:百度知道 编辑:UC知道 时间:2024/04/28 19:26:15
有一个下拉列表,在里面显示所有电脑的盘符。

先添加对System.Management的引用

using System.Management;
...
SelectQuery selectQuery = new SelectQuery("select * from win32_logicaldisk");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(selectQuery);
int i = 0;
foreach (ManagementObject disk in searcher.Get())
{
//获取驱动器盘符
this.listBox1.Items.Add(disk["Name"].ToString());
}

private void button1_Click(object sender, EventArgs e)
{
for (char c = 'a'; c <= 'z'; c++)
{
try
{
DriveInfo drive = new DriveInfo(c + ":");
if (drive.DriveType == DriveType.Fixed)
comboBox1.Items.Add(drive.Name);
}
catch (DriveNotFoundException dnf)
{
}

}
}

一个很SB的方法
可以看到所有固定磁盘

System.IO.Directory.GetLogicalDrives (); 返回的数组是当前已经使用的盘符,并非完全是固定磁盘(就是连CD光驱那些盘符都包括了)

“所有电脑的盘符”????

整个局域网的电脑还是广域网的所有电脑?

CheckBox.i