帮忙啦?

解决方案 »

  1.   

    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
      

  2.   

    MCI Command String是多媒体设备的程序接口。通过它,我们可以打开一个多媒体文件,例如mp3,VCD,Mpeg4格式的文件等等,并对它进行播放,暂停,关闭等操作。现在小弟有幸给大家介绍一下MCI Command String的使用方法。 MCI Command String是通过mciExecute或mciSendString两个函数执行的。这两个函数的声明如下: Private Declare Function mciExecute Lib "winmm.dll" Alias "mciExecute" (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
      

  3.   

    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
      

  4.   

    如果你想对媒体进行细致的控制,建议使用ActiveMovie control type libary程序库,它是DirectShow的VB结口,功能非常强大,支持的格式也就不用多说了,凡是微软支持的基本上都没有问题!
      

  5.   

    这两个函数都有一个叫lpstrCommand的参数, 这个参数就是MCI Command String。
    MCI Command String的命令格式是这样的:lpszCommand lpszDevice lpszCommandFlag lpazFlag 
    lpszCommand是mci命令,例如open,play,stop,close等等。 lpszDevice是设备名(或文件名)。例如,我们用以下的程序打开了我的文档中的Music01.dat文件,并用“alias”参数将其别名设为OpenFile: dim lReturn as long (1) lReturn=mciExecute(“open C:\Mydocu~1\Music01.dat alias OpenFile type MPEGVideo”) (2) 那么,在以后的MCI Command String中lpszDevice参数必须指定为OpenFile。例如,关闭该文件的代码如下: lReturn=mciExecute(“close OpenFile”) (3) 如果我们没有为打开的文件设定别名,则以后调用的MCI Command String中lpszDevice参数为DOS路径名加文件名。例子如下: dim lReturn as long (4) lReturn=mciExecute(“open C:\Mydocu~1\Music01.dat type MPEGVideo”) (5) lReturn=mciExecute(“close C:\Mydocu~1\Music01.dat type MPEGVideo”) (6) 从这里可以看出,设定别名的好处是减少了代码的输入。 LpszCommandFlag是mci命令的参数。如上代码(2),“alias OpenFile”以及“type MPEGVideo”就是命令“open”的参数。通常一个mci命令的参数少则几个多则几十个。 LpazFlag可以为指定为“wait”或“notity”。如果为“wait”,那么mci命令执行完毕后会向父窗体发送MCI_WAIT消息,“notity”则发送MCI_NOTIFY消息。此参数在Visual Basic中无甚用处。 
      

  6.   

    Public Declare Function mciSendCommand Lib "winmm.dll" Alias "mciSendCommandA" (ByVal wDeviceID As Long, ByVal uMessage As Long, ByVal dwParam1 As Long, ByVal dwParam2 As Any) As Long
    Public 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前一个是通过命令进行控制,后一个是通过字符串进行控制.
    其实微软的ActiveMovie control type libary库文件也只不过是封装了这两个API而已.用它能控制的用这两个API完全可以控制~~
      

  7.   

    我用的也是以下两个API
    Public Declare Function mciSendCommand Lib "winmm.dll" Alias "mciSendCommandA" (ByVal wDeviceID As Long, ByVal uMessage As Long, ByVal dwParam1 As Long, ByVal dwParam2 As Any) As Long
    Public 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
      

  8.   

    http://www.csdn.net/develop/ 在这里搜 mci