在VB中用API实现多媒体主要是调用Windows的mmsystem.dll库。以下为调用API的声明(这些代码放在程序的声明部分中):
1.′播放CD和AVI所需要的声明。 DeclareFunctionmciSendStringLib″MMSYSTEM″(ByVal lpstrCommandasString,ByVallpstrReturnStrasAny,By ValwRetumLenasInteger,ByValhCallBackasInteger)as Long
′播放WAV所需要的声明 DeclareFunctionsndPlaySoundLib″MMSYSTEM.DLL″(ByVallpszSoundNameasString,ByValwF1agsasInteger)asInteger
′检测声卡所需要的声明 DeclareFunctionauxGetNaumDevsLib″MMSYSTEM″()asInteger
′所用到的全局变量声明 GlobalConstSND_SYNC=&H0000 ′播放WAV用到的全局变量 GlobalConstSND_ASYNC=&-H0001′播放WAV用到的全局变量 GlobalConstSND_NODEFAULT=&H0002′播放WAV用到的全局变量 GlobalConstSND_LOOP=&H0008′播放WAV用到的全局变量 GlobalConstSND_NOSTOP=&-H0010′播放WAV用到的全局变量
′接下来是调用这些声明 FunctionauxTest()asBoolean DimIAsInteger I=auxGetNumDevs() IfI>0Then AuxTest=True′如果有声卡则返回真 ExitFunction Else AuxTest=False′如果未检测到声卡则返回假 ExitFunction Else AuxTest=False′如果未检测到声卡则返回假 ExitFunction EndIf EndFunction
2.播放CD的源代码 SubPlayCD(bAsInteger) ′b为所播的音轨号 DimaAsLong a=mciSendString(″opencdaudioaliascdwait″,0&,0,0)`初始化驱动 a=mciSendString(″setcdtimeformattmsf″,0&,0,0) a=mciSendString(″playcdfrom″&Str(b),0&,00)′播放音轨 EndSub
3.播放AVI的源代码 SubplayAVI(AVIFileAsString) DimRvalasLong AVIFile=″play″+AVIFile+″fullscreen″′全屏幕播放AVI文件 Rval=mciSendString(AVIFile,0&,0,0&) EndSub
4.播放WAV的源代码 SubplayWAV(WAVFileAsString) DimFlagasInteger DimaasInteger wFlag=SND_ASYNCorSND_NODEFAULT a=sndPlaySound(WAVFile,Flag) EndSub
以上程序是我在调用多媒体时所常用的模块,你只需将上面的模块在程序中直接调用即可。->
|