PlaySound() 函数不起作用

Posted

技术标签:

【中文标题】PlaySound() 函数不起作用【英文标题】:PlaySound() function isn't working 【发布时间】:2014-04-13 00:50:19 【问题描述】:

我一直在寻找一个多小时的谷歌搜索结果试图解决这个问题。

我正在尝试让 PlaySound() 函数工作,但我终生无法做到。

这是我的完整代码:

#include <iostream>
#include <Windows.h>

using namespace std;

int main()

    PlaySound(TEXT("E:\\Audio\\Sounds\\beep.mp3"), NULL, SND_FILENAME);

    system("PAUSE");

我还将 winmm.lib 添加到我的附加依赖项中,以解决上述代码无法编译的问题。

我已经尝试了我所见过的所有组合,但我无法弄清楚为什么这不起作用。听起来程序启动时Windows正在播放警告声音(如果您转到系统声音设置,它是Windows 7/8默认的“星号”声音),这不是我想要的beep.mp3声音它玩。

换句话说,听起来好像发生了某种错误。但是如果每次函数返回一个'1',并且根据MSDN,这意味着它运行成功。

知道为什么这不起作用吗?

【问题讨论】:

您需要通过此 API 使用 .wav 文件,而不是 mp3。 转换并更改代码中的文件名后仍然无法正常工作:( 【参考方案1】:

在将扬声器的配置(控制面板 -> 硬件和声音 -> 管理音频设备)更改为四声道或立体声后,我也遇到了同样的问题(首先是 5.1 环绕声)

【讨论】:

以上是关于PlaySound() 函数不起作用的主要内容,如果未能解决你的问题,请参考以下文章

声音管理器 2 和播放列表自动播放下一首歌曲不起作用

删除()函数不起作用

为啥我的函数在调用时不起作用? [关闭]

为啥从函数调用分配给属性 innerHTML 不起作用?

JavaScript数学函数不起作用并返回Nan

引导崩溃()函数不起作用