Declare Function mciExecute Lib “winmm.dll" Alias “mciExecute" (ByVal lpstrCommand As String) As Long
Declare Function mciSendString Lib “winmm.dll“Alias“mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwnd Callback As Long) As Long
Declare Function mciGet Error String Lib “winmm.dll" Alias “mciGetError String A" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long
'函数声明 Private Declare Function mciExecute Lib “winmm.dll" (ByVal lpstrCommand As String) As Long 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 Dim Cur As Integer '保存当前正在播放的曲目号 Dim Total As Integer '保存CD曲目总数 '弹出CD-ROM Private Sub Command1_Click() i% = mciExecute(“set cdaudio door open") End Sub '播放 Private Sub Command2_Click() i% = mciExecute("play cdaudio") End Sub '暂停 Private Sub Command3_Click() i% = mciExecute(“pause cdaudio") End Sub '播放下一首 Private Sub Command4_Click() Dim ReturnStr As String * 128 i% = mciExecute(“set cdaudio time format tmsf") '设置from后的时间格式 If Cur < Total Then i% = mciExecute(“play cdaudio from" + Str(Cur + 1)) End Sub '播放上一首 Private Sub Command5_Click() Dim ReturnStr As String * 128 i% = mciExecute(“set cdaudio time format tmsf") If Cur > 1 Then i% = mciExecute(“play cdaudio from" + Str(Cur - 1)) End Sub '中止CD的播放并退出 Private Sub Command6_Click() i% = mciExecute(“stop cdaudio") i% = mciExecute(“close cdaudio") End End Sub '程序启动时打开CDAudio设备并得到曲目总数 Private Sub Form_Load() Dim ReturnStr As String * 128 i% = mciSendString(“open cdaudio", ReturnStr, 128, 0) i% = mciSendString(“status cdaudio number of tracks", ReturnStr, 128, 0) Total = Val(ReturnStr) End Sub '退出时中止CD的播放 Private Sub Form_Unload(Cancel As Integer) i% = mciExecute(“stop cdaudio") i% = mciExecute(“close cdaudio") End Sub '每隔一秒监测当前播放的曲目号 Private Sub Timer1_Timer() On Error Resume Next Dim ReturnStr As String * 128 i% = mciSendString(“status cdaudio current track", ReturnStr, 128, 0) Cur = Val(ReturnStr) End Sub