2009-07-29 233 views
0

我在写一个.net winforms应用程序。我希望能够枚举系统上的所有硬盘驱动器。如何枚举硬盘驱动器

此外,我希望能够确定哪些驱动器是固定的,哪些是可移动的。

最后,在可移动驱动器中,我希望能够确定哪些是闪存(SSD或拇指)驱动器与标准硬盘驱动器。

回答

5

对于前两点你需要以下内容。我认为你可能不得不切换到WMI来确定可移动驱动器是基于固态还是基于硬盘。

foreach(DriveInfo info in DriveInfo.GetDrives()) 
{ 
    Console.WriteLine(info.Name + ":" + info.DriveType); 
} 

生产的所有驱动器的列表,并从DriveType Enum

1
DriveInfo[] drives = DriveInfo.GetDrives(); 
foreach (DriveInfo drive in drives) 
{ 
    if (drive.DriveType == DriveType.Fixed) 
    { 
     // Do something 
    } 
    else if (drive.DriveType == DriveType.Removable) 
    { 
     // Do something else 
    } 
} 

但我不知道你怎么能确定它是否是闪存,SSD或硬盘驱动器...也许与WMI