c++中怎么使用mciSendString
时间: 2023-11-28 14:49:41 浏览: 181
mciSendString 是一个用于控制多媒体设备(如声音和视频设备)的函数,定义在 `winmm.dll` 动态链接库中,需要在程序中先加载该库。
以下是使用 mciSendString 播放音频文件的示例代码:
```c++
#include <windows.h>
#include <mmsystem.h>
#pragma comment(lib, "winmm.lib") // 加载 winmm 库
int main()
{
// 打开音频文件
MCI_OPEN_PARMS mciOpenParms;
memset(&mciOpenParms, 0, sizeof(mciOpenParms));
mciOpenParms.lpstrDeviceType = "mpegvideo";
mciOpenParms.lpstrElementName = "sound.mp3";
DWORD dwReturn = mciSendString("open \"sound.mp3\" type MPEGVideo alias mySound", NULL, 0, NULL);
if (dwReturn != 0) {
printf("Failed to open audio file.\n");
return -1;
}
// 播放音频文件
dwReturn = mciSendString("play mySound", NULL, 0, NULL);
if (dwReturn != 0) {
printf("Failed to play audio file.\n");
return -1;
}
// 关闭音频文件
dwReturn = mciSendString("close mySound", NULL, 0, NULL);
if (dwReturn != 0) {
printf("Failed to close audio file.\n");
return -1;
}
return 0;
}
```
以上代码先通过 `"open"` 命令打开音频文件,并取一个别名为 `"mySound"`,然后通过 `"play"` 命令播放该别名对应的音频文件,最后通过 `"close"` 命令关闭音频文件。
阅读全文