在MFC中,可以使用MessageBeep和sndPlaySound函数来播放声音。
1. MessageBeep函数:
MessageBeep函数用于播放系统默认的声音。它的原型如下:
```cpp
BOOL MessageBeep(UINT uType);
```
其中,uType参数指定要播放的声音类型。常用的声音类型有:
- MB_OK:播放一个“确认”声音。
- MB_ICONASTERISK:播放一个“信息”声音。
- MB_ICONEXCLAMATION:播放一个“警告”声音。
- MB_ICONHAND:播放一个“错误”声音。
示例代码:
```cpp
MessageBeep(MB_OK);
```
2. sndPlaySound函数:
sndPlaySound函数用于播放指定的声音文件。它的原型如下:
```cpp
BOOL sndPlaySound(LPCTSTR lpszSound, UINT uFlags);
```
其中,lpszSound参数指定要播放的声音文件路径或名称。uFlags参数指定播放声音的行为标志。常用的行为标志有:
- SND_FILENAME:lpszSound参数是一个文件名。
- SND_ASYNC:以异步方式播放声音,即立即返回而不等待声音播放完成。
- SND_LOOP:循环播放声音。
示例代码:
```cpp
// 播放一个wav文件
sndPlaySound(_T("path/to/sound.wav"), SND_FILENAME);
// 播放一个循环的wav文件
sndPlaySound(_T("path/to/loop_sound.wav"), SND_FILENAME | SND_LOOP);
// 停止播放声音
sndPlaySound(NULL, 0);
```
注意:为了使用sndPlaySound函数,需要在项目的资源文件中包含相应的声音文件,并将其设置为资源文件的属性为"audio"。