【发布时间】:2011-09-14 13:34:27
【问题描述】:
我有一个用 C# 编写的 DVD 读取和刻录应用程序。我希望能够检测空驱动器(无磁盘)和打开驱动器之间的区别。
编辑:在谷歌搜索之后,我认为更好的问题描述是“我想访问驱动器托盘状态 - 打开或关闭”
我可以使用
ManagementObjectSearcher("SELECT * FROM Win32_LogicalDisk WHERE DriveType= 5")
查找系统中的所有 dvd 驱动器,属性告诉我驱动器中是否有磁盘。 Access 属性告诉我是否有空白磁盘。
但Access 在驱动器打开以及驱动器关闭并为空时为空。当驱动器打开或关闭时,我看不到任何其他属性发生变化。
有谁知道区分开放式驱动器和封闭式空驱动器的方法?
我使用的是 Win7,但理想情况下该解决方案也适用于 XP 和 Vista。
【问题讨论】:
-
@Ian Ringrose:为什么?这个问题没有答案。
-
我不能 100% 确定你是否能做到。例如,它应该为驱动器中的插槽返回什么?
-
在这种情况下我可以忍受失败,迈克尔。驱动器必须知道它是打开还是关闭。并且您可以使用 c# 打开和关闭驱动器 - 因此必须可以访问托盘状态。