我有一个俄罗斯方块游戏,我想为其添加背景音乐。 我正在尝试使用
PlaySound(TEXT("Tetris.wav"), NULL, SND_SYNC);
,但我得到的不是音乐,而是“Windows 声音”。
它可以编译。我想它不想与过剩一起工作。
这是我的
main()
int main(int argc, char **argv)
{
PlaySound(TEXT("Tetris.wav"), NULL, SND_SYNC);
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB);
glutInitWindowSize(600,600);
glutInitWindowPosition(1000, 10);
glutCreateWindow("Tetris");
glClearColor(0, 0, 0, 1);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0, 150, 200, 0, -1.0, 1.0);
glutDisplayFunc(display);
timer(0);
glutSpecialFunc(keyEvent);
glutMainLoop();
}
我有
#include <Windows.h>
和 #include <MMSystem.h.>
,它在这里工作正常:
#include <iostream>
#include <Windows.h>
#include <MMSystem.h.>
using namespace std;
int main()
{
PlaySound(TEXT("Tetris.wav"), NULL, SND_SYNC);
cout << "Hello world!" << endl;
return 0;
}
那么这是因为供过于求吗?我可以以某种方式解决它吗?
问题可能是因为您尚未将 WINMM.LIB(Windows 多媒体库)添加到链接器使用的对象库中。默认情况下不包含它。如果你使用VS,你需要进入项目设置(属性)并按照以下路径: Linker->General->Additional Library Directoryies , 然后将 WINMM.LIB 添加到此部分。之后就可以很好的使用多媒体功能调用了。