0

我正在尝试在 C++ 中使用 Playsound()。

我已经查看了所有内容,但我总是得到默认的 Windows 错误声音。

PlaySound(TEXT("D:\\Pokemon Game Stuff\\Programming\\Tests\\city simulator\\Sound.wav"), NULL, SND_FILENAME | SND_ASYNC);

winmm.lib 已在链接器设置中设置。完整的位置和文件名已经过测试。我正在使用 Code::Blocks 并使用 C++ 14 标准进行编译。

4

1 回答 1

1

根据PlaySound()文档:

SND_FILENAME
pszSound参数是一个文件名。如果找不到文件,则函数播放默认声音,除非SND_NODEFAULT设置了标志。

...

PlaySound在以下目录中搜索声音文件:当前目录;Windows 目录;Windows系统目录;PATH环境变量中列出的目录;以及映射到网络中的目录列表。如果函数找不到指定的声音并且SND_NODEFAULT未指定标志,则PlaySound使用默认的系统事件声音代替。如果该函数既找不到系统默认入口也找不到默认声音,则不发出声音并返回FALSE

仔细检查该文件是否确实存在于您指定的路径中,以及运行您的应用程序的用户是否有权访问该文件。

于 2018-04-27T23:02:37.220 回答