检测磁盘是否为闪存驱动器
Detecting if disk is flash drive
我想编写检测闪存驱动器的程序。
但是有一个问题。
代码:
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo drive in DriveInfo.GetDrives())
{
if (drive.DriveType == DriveType.Removable)
{
}
}
它运行良好,但它也能检测到 cdrom。如何预防?
我不知道为什么你的代码不起作用。但是如果你想检测 USB 设备,你也可以像这样用 WMI 试试:
ManagementObjectCollection drives = new ManagementObjectSearcher(
"SELECT Caption, DeviceID FROM Win32_DiskDrive WHERE InterfaceType='USB'"
).Get();
将 System.Management 程序集添加到您的项目中,就像这样。
我想编写检测闪存驱动器的程序。
但是有一个问题。
代码:
DriveInfo[] allDrives = DriveInfo.GetDrives();
foreach (DriveInfo drive in DriveInfo.GetDrives())
{
if (drive.DriveType == DriveType.Removable)
{
}
}
它运行良好,但它也能检测到 cdrom。如何预防?
我不知道为什么你的代码不起作用。但是如果你想检测 USB 设备,你也可以像这样用 WMI 试试:
ManagementObjectCollection drives = new ManagementObjectSearcher(
"SELECT Caption, DeviceID FROM Win32_DiskDrive WHERE InterfaceType='USB'"
).Get();
将 System.Management 程序集添加到您的项目中,就像这样。