在VB中用API完成多媒体
发表时间:2024-02-18 来源:明辉站整理相关软件相关文章人气:
[摘要]在VB中用API实现多媒体主要是调用Windows的mmsystem.dll库。以下为调用API的声明(这些代码放在程序的声明部分中): 1.′播放CD和AVI所需要的声明。 Declare Function mciSendString Lib ″MMSYSTEM″(ByVal lpstrCo...
在VB中用API实现多媒体主要是调用Windows的mmsystem.dll库。以下为调用API的声明(这些代码放在程序的声明部分中):
1.′播放CD和AVI所需要的声明。
Declare Function mciSendString Lib ″MMSYSTEM″(ByVal lpstrCommand as String,ByVal lpstrReturnStr as Any,By Val wRetumLen as Integer,ByVal hCallBack as Integer) as Long
′播放WAV所需要的声明
Declare Function sndPlaySound Lib ″MMSYSTEM.DLL″(ByVal lpszSoundName as String,ByVal wF1ags as Integer) as Integer
′检测声卡所需要的声明
Declare Function auxGetNaumDevs Lib ″MMSYSTEM″()as Integer
′所用到的全局变量声明
Global Const SND_SYNC=&H0000 ′播放WAV用到的全局变量
Global Const SND_ASYNC=&-H0001 ′播放WAV用到的全局变量
Global Const SND_NODEFAULT=&H0002 ′播放WAV用到的全局变量
Global Const SND_LOOP=&H0008 ′播放WAV用到的全局变量
Global Const SND_NOSTOP=&-H0010 ′播放WAV用到的全局变量
′接下来是调用这些声明
Function auxTest()as Boolean
Dim i As Integer
i=auxGetNumDevs()
If i>0 Then
AuxTest=True ′如果有声卡则返回真
Exit Function
Else
AuxTest=False ′如果未检测到声卡则返回假
Exit Function
Else
AuxTest=False ′如果未检测到声卡则返回假
Exit Function
End If
End Function
2.播放CD的源代码
Sub PlayCD(b As Integer)
′ b为所播的音轨号
Dim a As Long
a=mciSendString(″open cdaudio alias cd wait″,0&,0,0) '初始化驱动
a=mciSendString(″set cd time format tmsf″,0&,0,0)
a=mciSendString(″play cd from″& Str(b),0&,00) ′播放音轨
End Sub
3.播放AVI的源代码
Sub playAVI(AVIFile As String)
Dim RVal as Long
AVIFile=″play″+AVIFile+″fullscreen″ ′全屏幕播放AVI文件
RVal=mciSendString(AVIFile,0&,0,0&)
End Sub
4.播放WAV的源代码
Sub playWAV(WAVFile As String)
Dim Flag as Integer
Dim a as Integer
wFlag=SND_ASYNC or SND_NODEFAULT
a=sndPlaySound(WAVFile,Flag)
End Sub
以上程序是我在调用多媒体时所常用的模块,你只需将上面的模块在程序中直接调用即