作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 visual studio,我想知道如何将 mp3 文件添加为资源然后进行播放,但我在这方面找不到任何信息!
名义上我已经将文件添加到资源文件夹,但我不知道我是否正确地添加了它我的 .rc 文件有一个名为“mp3”的文件夹,其中是文件 IDR_MP31我试过这个:
PlaySound(L"mp3\\IDR_MP31", NULL, SND_RESOURCE | SND_ASYNC);
不幸的是,这似乎不起作用我将如何在我的代码中引用我的资源?我可以用 mciSendString 播放吗?
编辑:我可以从内存中播放 .WAV 文件,但这并不理想,因为它需要大量内存
在resource.h中:
#define IDR_WAVE1 104
函数
HINSTANCE h = ::GetModuleHandle(0);
HRSRC res = ::FindResource(h, MAKEINTRESOURCE(104), TEXT("WAVE"));
if (res == 0)
return;
HGLOBAL global = ::LoadResource(h, res);
if (global == 0)
return;
void* wav = ::LockResource(global);
if (wav == 0)
{
UnlockResource(global);
FreeResource(global);
return;
}
PlaySound(LPCWSTR(wav), NULL, SND_MEMORY | SND_ASYNC | SND_NODEFAULT);
UnlockResource(global);
FreeResource(global);
如果有人知道如何用这种方式播放 mp3 文件,请告诉我。谢谢
最佳答案
您应该可以使用 mciSendString 播放它:mciSendString("play mp3", NULL, 0, NULL);
此链接也有一些有用的信息:https://www.codeproject.com/Articles/17279/Using-mciSendString-to-play-media-files
关于c++ - 如何将 mp3 文件添加为资源然后播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58922883/
我是一名优秀的程序员,十分优秀!