如何播放标准的Windows声音?

时间:2008-09-16 13:29:37

标签: winapi audio

如何找出用户在控制面板中配置的声音文件?

示例:我想播放“已连接设备”的声音。

哪个API可用于查询控制面板声音设置?

我看到控制面板对话框中有一些由第三方程序创建的自定义条目,因此必须有一种方法让这些程序与全局声音设置进行通信。

编辑:谢谢。我不知道PlaySound在指定注册表项的名称时也只播放了合适的声音文件。

播放“Device Conntected”声音:

::PlaySound( TEXT("DeviceConnect"), NULL, SND_ALIAS|SND_ASYNC );

3 个答案:

答案 0 :(得分:14)

答案 1 :(得分:12)

不是Win32,但对于.net无论如何,您可以使用C#中的以下内容执行此操作:

System.Media.SystemSounds.Asterisk.Play();
// Plays the Asterisk sound (used for Information (i))
// Also available:
// Exclamation (Warning /!\)
// Hand (aka Critical Stop - Error (X))
// Question (?)
// Beep (aka Default Beep)

答案 2 :(得分:1)