我正在尝试创建一个程序,我可以播放音乐,即mp3文件。我正在尝试使用winmm库。首先,当我尝试链接它时,编译器给出了我意识到的错误该程序没有与库正确链接,但后来我在链接器设置中添加了库文件,现在程序执行正常(没有错误 - 表明它已正确链接)但没有播放音乐。我可以'弄清楚问题是什么。我现在正在使用代码块,它使用gcc编译器。任何人都可以解释问题是什么以及音乐没有播放的原因?如果有人能帮助我,我将不胜感激! :)
我的代码(它只是打印文本但没有播放音乐):
#include <stdio.h>
#pragma comment (lib, "winmm.a")
#include <windows.h>
#include <mmsystem.h>
int main()
{
printf("Hello world!\n");
mciSendString("play song.mp3",NULL,NULL,NULL);
printf("\nY");
mciSendString("pause song.mp3",NULL,NULL,NULL);
mciSendString("close song.mp3",NULL,NULL,NULL);
printf("\ndone");
return 0;
}
答案 0 :(得分:4)
MCI命令立即返回。这意味着您在播放之前几乎不会立即暂停和关闭mp3。查看文档,您必须使用Wait Flag:
mciSendString("play song.mp3 wait",NULL,NULL,NULL);