C#如何判断DVD驱动器托盘是否打开?

| 我在C#中有一个DVD阅读和刻录应用程序。我希望能够检测到空驱动器(无磁盘)和打开的驱动器之间的差异。 编辑:经过更多的谷歌搜索后,我认为一个更好的问题描述是“我想访问驱动器托盘状态-打开或关闭” 我可以用
ManagementObjectSearcher(\"SELECT * FROM Win32_LogicalDisk WHERE DriveType= 5\")
查找系统中所有的DVD驱动器,并且属性告诉我驱动器中是否有磁盘。
Access
属性告诉我是否有空白磁盘。 但是,当驱动器打开时,以及在驱动器关闭并为空时,
Access
为空。而且,当驱动器打开或关闭时,我看不到任何其他更改的属性。 有人知道将打开的驱动器与关闭的空驱动器区分开的方法吗? 我正在使用Win7,但理想情况下,该解决方案也可以在XP和Vista上运行。     
已邀请:
        MediaLoaded属性(Win32_CDROMDrive)将告诉您是否已装入光盘。我有点困惑您在寻找什么: 磁盘托盘打开 磁盘托盘已关闭-无介质 磁盘托盘已关闭-有介质 MediaLoaded属性将在情况2(假)和情况3(真)下提供帮助     
        IOCTL_DISK_GET_LENGTH_INFO可能对您有用。     

要回复问题请先登录注册