关闭

读取usb接口的移动硬盘信息

标签: interfacestringdisk
767人阅读 评论(0) 收藏 举报
分类:
string   deviceId   =   "";  
   
  ManagementObjectSearcher   mc1   =   new   ManagementObjectSearcher("SELECT   *   FROM     Win32_DiskDriveToDiskPartition");  
   
  foreach   (ManagementObject   mo   in   mc1.Get())  
  {  
  //System.Console.WriteLine(mo["Dependent"].ToString()   +   mo["Antecedent"].ToString());  
  //Win32_DiskDrive  
  using(ManagementObject   o1   =   new   ManagementObject(mo["Antecedent"].ToString()))  
  {  
  o1.Get();  
   
  if(o1["InterfaceType"].ToString().ToUpper()   ==   "USB")  
  {  
  //Win32_DiskPartition  
  using(ManagementObject   o2   =   new   ManagementObject(mo["Dependent"].ToString()))  
  {  
  o2.Get();  
  //System.Console.WriteLine(o["DeviceID"]);  
  deviceId   =   o2["DeviceID"].ToString();  
  break;  
  }  
  }  
  }  
  }  
   
  if(deviceId   ==   "")  
  {  
  System.Console.WriteLine("No   USB   interface   disk   has   been   found.");  
  }  
  else  
  {  
  ManagementObjectSearcher   mc2   =   new   ManagementObjectSearcher("SELECT   *   FROM     Win32_LogicalDiskToPartition");  
   
  foreach   (ManagementObject   mo   in   mc2.Get())  
  {  
  System.Console.WriteLine(mo["Dependent"].ToString()   +   mo["Antecedent"].ToString());  
   
  //Win32_DiskPartition  
  using(ManagementObject   o1   =   new   ManagementObject(mo["Antecedent"].ToString()))  
  {  
  o1.Get();  
  if(o1["DeviceID"].ToString()   ==   deviceId)  
  {  
  //Win32_LogicalDisk  
  using(ManagementObject   o2   =   new   ManagementObject(mo["Dependent"].ToString()))  
  {  
  o2.Get();  
  System.Console.WriteLine("USB   drive   found:"   +   o2["DeviceID"]);  
  }  
                                                   
  }  
  }  
  }    
   
  } 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:103189次
    • 积分:1547
    • 等级:
    • 排名:千里之外
    • 原创:40篇
    • 转载:38篇
    • 译文:0篇
    • 评论:36条
    最新评论