AutoHotkey中可用SoundPlay命令播放系统提示音或本地WAV文件:一、用*-1等ID调用系统音;二、用绝对/相对路径播.wav文件,路径含空格需加引号;三、加参数1实现同步播放;四、配合IfExist检测文件存在性以增强健壮性。

如果您希望在AutoHotkey脚本中播放系统提示音或本地音频文件,则可直接调用内置的SoundPlay命令。该命令无需额外依赖,支持.wav格式文件及Windows预设声音ID。以下是具体操作步骤:
一、播放系统内置提示音
SoundPlay可通过特殊前缀调用Windows系统预定义的声音资源,例如错误提示、信息提示等,这些声音由操作系统统一管理,无需路径指定。
1、使用星号(*)加数字ID的方式调用系统声音,例如播放默认错误音效。
2、在脚本中输入:SoundPlay, *-1,其中-1代表系统默认错误提示音。
3、其他常用ID包括:*0(默认提示音)、*1(警告音)、*2(询问音)、*3(信息音),数值范围为-1至127,具体对应需参考系统声音方案设置。
二、播放本地WAV音频文件
SoundPlay支持绝对路径或相对路径的.wav文件播放,要求文件格式为PCM编码的单声道或立体声WAV,不支持MP3、OGG等压缩格式。
1、确保目标音频文件为.wav格式,并记录其完整路径,例如C:\Sounds\alert.wav。
2、在脚本中输入:SoundPlay, C:\Sounds\alert.wav。
3、若路径含空格或中文,必须用双引号包裹路径,例如:SoundPlay, "C:\My Sounds\done.wav"。
三、播放后等待完成再执行后续操作
默认情况下SoundPlay为异步播放,即命令发出后立即继续执行下一行脚本。如需阻塞等待音频播完,须添加参数1。
1、在SoundPlay命令末尾添加逗号和数字1,启用同步模式。
2、示例语句:SoundPlay, C:\Sounds\ready.wav, 1。
3、此模式下脚本将暂停,直至音频播放完毕才运行后续指令,适用于需要严格时序控制的场景。
四、播放失败时的静默处理与调试
当SoundPlay无法定位文件或格式不兼容时,默认不报错也不提示,可能造成脚本行为不可见。可通过前置判断与错误反馈增强健壮性。
1、使用IfExist指令检查文件是否存在,例如:IfExist, C:\Sounds\alarm.wav。
2、在IfExist块内执行SoundPlay,否则弹出提示:MsgBox, 音频文件不存在,请检查路径。
3、对非.wav文件,应预先转换格式;若需播放MP3,须借助第三方工具(如ffplay)或COM对象,不属于SoundPlay原生能力范围。

















