如何解决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可能对您有用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。