遇到应用WMI .NET 技术读取U盘唯一物理ID号问题

zhangq0309 2009-08-15 02:42:12
具体思路:程序需要实现的是 通过DriveInfo读取到已经插入到USB接口的U盘的盘符,然后将这个盘符赋值给win32_logicaldisk.deviceid,再通过ManagementObject方法将U盘的唯一物理ID号读出来。

遇到的问题: 在给win32_logicaldisk.deviceid赋值的时候,是通过遍历DriveInfo,但赋值后,获取不到这个路径。
   ManagementObject disk = null;
DriveInfo[] s = DriveInfo.GetDrives();
foreach (DriveInfo drive in s)
{
if (drive.DriveType == DriveType.Removable)
{

string driver = "win32_logicaldisk.deviceid=" + drive.Name.ToString() + "";

try
{
disk = new ManagementObject(driver);
this.listBox1.Items.Add(disk.GetPropertyValue("VolumeSerialNumber").ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}



}
...全文
160 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangq0309 2009-08-15
  • 打赏
  • 举报
回复
我自己重新写了个方法测试通过了
   ManagementObject disk = null;
DriveInfo[] s = DriveInfo.GetDrives();
foreach (DriveInfo drive in s)
{
if (drive.DriveType == DriveType.Removable)
{

string driver = "win32_logicaldisk.deviceid=\"" + drive.Name.ToString().Replace(":\\", "") + ":\"";

try
{
disk = new ManagementObject(driver);
this.listBox1.Items.Add(disk.GetPropertyValue("VolumeSerialNumber").ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}



}

110,538

社区成员

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

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

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