我试图在应用中检测到CD-ROM驱动器,我正在使用
ComboBox cb = new ComboBox();
var drives = DriveInfo.GetDrives();
foreach (var drive in drives)
{
if (drive.DriveType == DriveType.CDRom)
{
cboDrives.Items.Add(drive);
}
}
它拿起D:\和E:\
D:\是我工作PC上真正的CD-ROM,E:\是通过Alcohol 120%的虚拟驱动器
我正在创建一个应用程序来将光学介质读取到ISO然后我将ISO安装在Alcohol中以测试ISO是否正常。
我希望为用户提供便利,在创建ISO时,他们只有一个驱动器可供选择,并且相同用于ISO的测试。
我可以尝试过滤掉驱动器号D:\,当我运行测试ISO的应用程序部分运行但并非所有PC都有D:\作为他们的CD驱动器,我的Win8。例如,1个盒子将它作为J:...并且有两个虚拟CD驱动器(酒精和虚拟克隆驱动器)G:\和N :.
有没有办法自己拿起真正的CD驱动器盘符,然后才能找到虚拟盘符号呢?
更新 有趣的是,我发现通过测试驱动器是否就绪,然后只有CD驱动器被拾取,因为它包含介质而虚拟驱动器没有。一旦安装了媒体然后它被拾取,我想我可以用这个和/或重复的问题答案做一些事情。
ComboBox cb = new ComboBox();
var drives = DriveInfo.GetDrives();
foreach (var drive in drives)
{
if (drive.IsReady == true)
{
if (drive.DriveType == DriveType.CDRom)
{
cboDrives.Items.Add(drive);
}
}
}