在VC资源文件中加入声音资源


所属类别:vc

文章作者:不详

特别推荐:免费发布信息 承包关键词~~抢爆了!HOT!


本文介绍如何在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_MEMORYSND_SYNC); FreeResource(hg); return 0;}ea5

相关信息

· 将xml作为DataGrid操作(Sort,Edit,Delete)

· 如何屏蔽掉phpinfo()函数(转)

·  Liferay的布局模板

· 介绍几个php4中非常有用的"数组"函数(转载)关联数组等同于PERL里的哈希数组。以前我一直以为PHP里没...








....

116508 25289