#pragma comment(lib,"Winmm.lib")
//头文件
#include
具体播放的代码是这样的
int main()
{
mciSendString("open D:\\MusicResource\\abc.mp3 alias bkmusic", NULL, 0, NULL);
mciSendString("play bkmusic repeat", NULL, 0, NULL); //循环播放音乐
_getch();
return 0;
}
open指令打开需要播放的音乐,alias后面制定了前面文件路径的别名,以后想要操作这个文件直接使用这个别名就行了,后面的三个参数平时,就记着写作NULL,0,NULL即可。
第二条play指令后面接上面定义的别名,repeat表示歌曲循环播放。如果想要在音乐播放时停止播放,有以下代码
mciSendString("stop bkmusic", NULL, 0, NULL); //停止播放音乐
mciSendString("close bkmusic", NULL, 0, NULL); //关闭音乐
总而言之:play mymusic 开始播放,stop mymusic 停止播放,close mymusic 关闭文件,如果需要同时播放多个音乐的话应该为每个音乐设置不同的别名,这样就可以了
还可以将音乐播放封装为一个函数
void PlayMusic(const char* FileName)
{
char cmdString[50] = "open ";
strcat_s(cmdString, FileName);
strcat_s(cmdString, " alias bkmusic");
mciSendString("close bkmusic", NULL, 0, NULL); //把上一次的音乐关掉
mciSendString(cmdString, NULL, 0, NULL); //打开音乐
mciSendString("play bkmusic", NULL, 0, NULL); //播放一次音乐
}
int main()
{
PlayMusic("D:\\MusicResource\\abc.mp3");
_getch();
return 0;
}
额外:还有一个函数PlaySound可以用来播放音乐,但是不支持mp3和wma