Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Private Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long
Public Function inoutcdrom(whichcdrom As String, incdrom As Boolean) As Integer
Dim error As String * 255
inoutcdrom = mciSendString("open cdaudio!" + whichcdrom + " alias mm", 0, 0, 0)
If inoutcdrom <> 0 Then
mciGetErrorString inoutcdrom, error, 255
MsgBox error
Exit Function
End If
If Not incdrom Then
inoutcdrom = mciSendString("set mm door open", 0, 0, 0)
Else
inoutcdrom = mciSendString("set mm door closed", 0, 0, 0)
End If
If inoutcdrom <> 0 Then
Exit Function
End If
inoutcdrom = mciSendString("close mm", 0, 0, 0)
End Function
使用:
打开光驱:
inoutcdrom 光驱盘符,false
关闭光驱:
inoutcdrom 光驱盘符,true