解决方法:
我换了其他WAV文件,就播放成功了。
代码
#include <Windows.h>
#include<Mmsystem.h>
#pragma comment(lib,"winmm.lib")
头文件顺序不能换
第二行和第三行我换了之后还是可以播放的,其他的换了程序会报错的。
主函数写下边一句就行了,我之前播放的文件是我项目运行结束之后生成的WAV文件,这一句我放到最后,发现还是播放不了,后来换了个其他的WAV文件,然鹅就能播放了,目前还在找之前播放不了的原因,大概知道的原因是播放不了的WAV文件,是我自己把音频数据写进去然后播放的,哪位大佬知道原因欢迎留言
PlaySound(TEXT("D:\\test_0_0.wav"), NULL, SND_ASYNC | SND_NODEFAULT);
我试出来了解决办法,之前不能播放的音频文件的原因是因为,我在写入WAV文件的时候。fs.seekg(0x04);这个位置,我把他改成了0,然后就可以播放了。其他的我都没有改。但是我自己并没有整明白,为什么改为0就可以playSound出来声音,难道是我自己的数据量太小了(我是写入了一秒的数据),希望知道原因的留言给我,感激不尽。