在.net中弹出cdrom

时间:2009-12-02 11:19:15

标签: .net

使用此代码:

public class DvdRomUtility
    {
        [DllImport("winmm.dll", EntryPoint = "mciSendStringA", CharSet = CharSet.Ansi)]
        protected static extern int mciSendString(string lpstrCommand, StringBuilder lpstrReturnString, int uReturnLength, IntPtr hwndCallback);

        public static void Open(string driveName)
        {
            int ret = mciSendString("set cdaudio door open", null, 0, IntPtr.Zero);
        }
        public static void Close(string driveName)
        {
            int ret = mciSendString("set cdaudio door closed", null, 0, IntPtr.Zero);
        }
    }

我可以打开和关闭我的DVD光盘。 但是我想要知道DVDrom的门是打开还是关闭,因为我想要一种方法,当我称之为IF:

1- dvd rom的门打开然后dvd rom的门将关闭

2- dvd rom的门关闭然后dvd rom的门将打开

感谢

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用System.IO.DriveInfo.IsReady

答案 1 :(得分:0)

您是否看过“DeviceIoControl”?有关示例和详细信息,请参阅MSDNP/Invoke.Ne t,尤其是 StorageEjectMedia StorageLoadMedia 命令。

编辑:对于示例代码,it is here