使用此代码:
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的门将打开
感谢
答案 0 :(得分:0)
您是否尝试过使用System.IO.DriveInfo.IsReady?
答案 1 :(得分:0)
您是否看过“DeviceIoControl”?有关示例和详细信息,请参阅MSDN和P/Invoke.Ne t,尤其是 StorageEjectMedia 和 StorageLoadMedia 命令。
编辑:对于示例代码,it is here。