VB使用mciSendString问题

来源:百度知道 编辑:UC知道 时间:2024/06/01 13:15:01
我用vb编Mp3播放器用的是mciSendString函数,但是它刚开始能播放音乐,过就不发声了。
我没有系统静音或低音,用千千静听能听音乐。
我还没有播放就没声,不存在音乐还没关闭就第二次再播放

代码:
Option Explicit
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 Sub Command1_Click()
mciSendString "open " & Text1.Text, vbNullString, 0, 0
mciSendString "play " & Text1.Text, vbNullString, 0, 0
End Sub

Private Sub Command2_Click()
mciSendString "close " & Text1.Text, vbNullString, 0, 0
End Sub

Private Sub Command3_Click()
CommonDialog1.Action = 1
Text1.Text = CommonDialog1.FileName
End Sub
这段代码本来可以播放音乐,是后来不知道怎么就不行了,没声了。
请问怎么回事,怎么解决?
谢谢!解决以后会追加悬赏!!!!

试试这样写 mciSendString "Open " & Chr(34) & 文件名 & " " & Chr$(34) & " alias File", 0, 0, 0

你的问题出在你输入的音乐文件名包括路径(Text1.Text)中有空格,把文件名改成没有空格就行了。
如:
text1.text="e:\My Documents\My Music\windows XP.mp3"
改为
text1.text="e:\MyDocu~1\MyMusi~1\window~1.mp3"
即用标准的8.3格式的文件名。