visual studion 2022怎样使用PlaySound()

[复制链接]
发表于 2025-10-11 07:35:07 | 显示全部楼层 |阅读模式
册本:《windows步伐筹划(第五版)》的开始
情况:visual studio 2022
内容:HELLOWIN步伐
阐明:以下内容大部分来自腾讯元宝。

在Visual Studio 2022中使用PlaySound()函数播放音频,需完成以下步调:

1. 设置项目情况

​**(1) 添加头文件和库文件**



  • 头文件:在代码中包罗<mmsystem.h>,留意需在<windows.h>之后引入。
  • 库文件:需链接winmm.lib库。可通过以下两种方式实现:

    • 方法1:在代码中添加#pragma comment(lib, "winmm.lib")。






    • 方法2:在项目属性中设置:

      • 右键项目 → 属性 → 链接器 → 输入 → 附加依赖项 → 添加winmm.lib。



​**(2) 字符串范例适配**



  • 若项目使用Unicode字符集(默认设置),需将字符串参数转换为宽字符范例:
    1. PlaySound(TEXT("sound.wav"), NULL, SND_FILENAME | SND_ASYNC); // 使用TEXT宏自动转换[1](@ref)
    复制代码

2. 调用PlaySound()函数

​**(1) 播放当地WAVE文件**

  1. PlaySound(TEXT("TESTWAVE.wav"), NULL, SND_FILENAME | SND_ASYNC); // 同步/异步播放[1,4](@ref)
复制代码


  • 参数阐明

    • TEXT("TESTWAVE.wav"):音频文件路径(需双反斜杠转义,如C:\\music\\sound.wav)。
    • NULL:使用当前实例句柄。
    • SND_FILENAME | SND_ASYNC:指定文件路径并异步播放(播放后函数立即返回)。

​**(2) 播放资源文件**


  • 在资源视图中右键项目 → 添加 → 资源 → 导入WAVE文件,假设资源ID为IDR_SOUND:
    1. PlaySound(MAKEINTRESOURCE(IDR_SOUND), GetModuleHandle(NULL), SND_RESOURCE | SND_ASYNC); // 从资源播放[1,4](@ref)
    复制代码


  • 留意:MAKEINTRESOURCE用于将资源ID转换为指针范例。
​**(3) 播放体系声音**

  1. PlaySound(TEXT("SystemStart"), NULL, SND_ALIAS | SND_ASYNC); // 播放系统启动音效[1,4](@ref)
复制代码


  • SystemStart是Windows预界说的体系变乱别名。

3. 常见标志组合

标志作用示例场景SND_ASYNC异步播放(函数立即返回)配景音乐播放SND_LOOP循环播放游戏配景音乐SND_NODEFAULT不播放默认声音(若文件不存在)克制错误提示音SND_MEMORY播放内存中的音频数据加载到内存的音频缓冲区
4. 错误处理处罚

  1. if (!PlaySound(TEXT("nonexistent.wav"), NULL, SND_FILENAME)) {
  2.     // 处理错误(如文件不存在)
  3.     MessageBox(NULL, TEXT("音频文件加载失败!"), TEXT("错误"), MB_ICONERROR);
  4. }
复制代码

5. 留意事项


  • 路径格式:Windows路径需使用双反斜杠(\\)或TEXT()宏处理处罚。
  • 异步播放:若需同步播放(函数等候音频竣事),移除SND_ASYNC标志。
  • 资源开释:若通过SND_MEMORY加载音频,需手动开释内存。

通过以上步调,即可在Visual Studio 2022中实现音频播放功能。详细实现可根据需求选择文件路径、资源或体系声音。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表