C#检测移动硬盘并获取移动硬盘盘符的方法

所属分类: 软件编程 / C#教程 阅读数: 97
收藏 0 赞 0 分享

网上找了很久关于C#检测移动硬盘并获取盘符的代码但没能找到,所以只能自己解决了

C#获取所有硬盘

var arr = DriveInfo.GetDrives();

得出的所有磁盘,发现对于移动硬盘,DriveType 不是 Removable 类型,而是 Fixed 枚举类型。

C#检测移动硬盘,网上找了很久,没有现成正确的代码,只有自己想办法了。

代码如下:

public static List<string> GetListDisk()
    {
      List<string> lstDisk = new List<string>();
      ManagementClass mgtCls = new ManagementClass("Win32_DiskDrive");
      var disks = mgtCls.GetInstances();
      foreach (ManagementObject mo in disks)
      {
        //if (mo.Properties["InterfaceType"].Value.ToString() != "SCSI" 
        //  && mo.Properties["InterfaceType"].Value.ToString() != "USB"
        //  )
        //  continue;

        if (mo.Properties["MediaType"].Value == null ||
          mo.Properties["MediaType"].Value.ToString() != "External hard disk media")
        {
          continue;
        }

        //foreach (var prop in mo.Properties)
        //{
        //  Console.WriteLine(prop.Name + "\t" + prop.Value);
        //}

        foreach (ManagementObject diskPartition in mo.GetRelated("Win32_DiskPartition"))
        {
          foreach (ManagementBaseObject disk in diskPartition.GetRelated("Win32_LogicalDisk"))
          {
            lstDisk.Add(disk.Properties["Name"].Value.ToString());
          }
        }

        //Console.WriteLine("-------------------------------------------------------------------------------------------");
      }
      return lstDisk;
    }

此代码是通过找 Win32_DiskDrive,Win32_DiskPartition,Win32_LogicalDisk 对应的属性值的规律, 三个之间的关系 得出 移动硬盘的盘符的。

更多精彩内容其他人还在看

C#抽象类与抽象方法详解

这篇文章主要为大家详细介绍了C#抽象类与抽象方法的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

C#代码实现扑克牌排序的几种方式

今天小编就为大家分享一篇关于C#代码实现扑克牌排序,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#泛型概念的简介与泛型的使用

今天小编就为大家分享一篇关于C#泛型概念的简介与泛型的使用,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C# 7.0 使用下划线忽略使用的变量的原因分析

这篇文章主要介绍了C# 7.0 使用下划线忽略使用的变量的原因浅析,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

C# 中使用正则表达式匹配字符的含义

正则表达式的作用用来描述字符串的特征。本文重点给大家介绍C# 中使用正则表达式匹配字符的含义,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
收藏 0 赞 0 分享

C# Dictionary和SortedDictionary的简介

今天小编就为大家分享一篇关于C# Dictionary和SortedDictionary的简介,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#中SQL Command的基本用法

今天小编就为大家分享一篇关于C#中SQL Command的基本用法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#使用SQL DataReader访问数据的优点和实例

今天小编就为大家分享一篇关于C#使用SQL DataReader访问数据的优点和实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#使用SQL Dataset数据集代码实例

今天小编就为大家分享一篇关于的文章,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享

C#使用SQL DataAdapter数据适配代码实例

今天小编就为大家分享一篇关于C#使用SQL DataAdapter数据适配代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享
查看更多