本文介绍如何在VC资源文件中加入自己的声音资源,使自己的应用程序可以播放声音。
1、首先用文本编辑器(如记事本)打开资源文件(.rc文件)
在最后加入自己的声音资源,如下IDW WAVE "c:\\kav\\sound\\virus.wav"
保存资源文件。
2、在应用程序中要播放声音的地方启动另一线程,用来播放声音:AfxBeginThread((AFX_THREADPROC)sound,NULL,THREAD_PRIORITY_NORMAL);
3、添加线程回调函数
这里介绍加载资源的方法。首先用函数AfxGetInstanceHandle()获得实例的句柄,其次用函数FindResource找到自己的声音资源。HRSRC FindResource(
HMODULE hModule, // module handle
LPCTSTR lpName, // resource name
LPCTSTR lpType // resource type
)
找到声音资源后,要用LoadResource加入该资源HGLOBAL LoadResource(
HMODULE hModule, // module handle
HRSRC hResInfo // resource handle
);
最后锁定资源内存块,并返回所标定内存块的虚拟内存地址。如果该资源被成功锁定的话,则返回值指向该资源开始处的第一个字节:LPVOID pv=LockResource()
注意:若上述四步中的任何一步发生问题,则返回并释放相应的内存。接下去要做的事情就是根据文件数据类型进行数据加载。 UINT CPlaySoundView::sound(LPVOID pParam)
{
HINSTANCE h=AfxGetInstanceHandle();
HRSRC hr=FindResource(h,"IDW","WAVE");
HGLOBAL hg=LoadResource(h,hr);
LPSTR lp=(LPSTR)LockResource(hg);
sndPlaySound(lp,SND_MEMORY|SND_SYNC);
FreeResource(hg);
return 0;
}
在VC资源文件中加入声音资源
转载本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
android中加载assets中的资源文件
在android中,如何加载assets目录下的文件夹呢?方法很简单,使用
android 加载 assets目录 -
android 多个资源文件 安卓资源文件
资源是您在代码中使用到的并且在编译时被打包进您的应用程序的附加文件。Android支持多种不同的文件,包括XML、PNG和JPEG文件。XML文件的格式决定于其描述的内容。这些文件将描述文件支持的类型、语法或格式。
android 多个资源文件 Android资源文件 整理 android xml 应用程序