
一.在程序中直接
播放声音文件\x0d\x0a在VC++ 中的多媒体动态连接库中提供了一组与音频设备有关的函数。利用这些函数可以方便地播放
声音。最简单的播放声音方法就是直接调用VC++中提供的声音播放函数BOOL sndPlaySound ( LPCSTR lpszSound,UINT fuSound )或BOOL PlaySound( LPCSTR lpszSound, HMODULE hmod, DWORD fuSound )其中参数lpszSound是需要播放声音的.W***文件的路径和文件名, hmod在这里为NULL,fuSound是播放声音的标志,详细说明请参考VC++中的帮助。 例如播放C:soundmusic.wav可以用sndPlaySound ("c:\sound\music.wav",SND_ASYNC)或PlaySound("c:\sound\music.wav",NULL, SND_ASYNC|SND_NODEFAULT )如果没有找到music.wav文件,第一种格式将播放系统默认的声音,第二种格式不会播放系统默认的声音。\x0d\x0a\x0d\x0a二.将声音文件加入到程序中\x0d\x0a在VC++的程序设计中,可以利用各种标准的
资源,如位图,菜单,对话框等。同时VC++也允许用户自定义资源,因此我们可以将声音文件作为用户自定义资源加入程序资源文件中,经过编译连接生成EXE文件,实现无.W***文件的声音播放。要实现作为资源的声音文件的播放,首先要在资源管理器中加入待播放的声音文件。\x0d\x0a具体步骤入下:\x0d\x0a1.获得包含资源的模块句柄:\x0d\x0aHMODULE hmod=AfxGetResourceHandle()\x0d\x0a2.检索资源块信息:\x0d\x0aHRSRC hSndResource=FindResource(hmod,MAKEINTRESOURCE(IDR_W***E1),_T("W***E"))\x0d\x0a3. 装载资源数据并加锁:\x0d\x0aHGLOBAL hGlobalMem=LoadResource(hmod,hSndResource)\x0d\x0aLPCTSTR lpMemSound=(LPCSTR)LockResource(hGlobalMem)\x0d\x0a4.播放声音文件:\x0d\x0asndPlaySound(lpMemSound,SND_MEMORY));\x0d\x0a5.释放资源句柄:\x0d\x0aFreeResource(hGlobalMem)不要误导新手!C语言在编程方面是无所不能的!上到HTML,下到硬件驱动,系统内核!
可以实现,但是比较麻烦!在TC能运行,也就是控制台程序,首先,你的程序要能驱动你机器的硬件,也就是你能够和硬件通讯,C语言串口通讯之类的东西.用Unix的思想,任何硬件都可以看做文件来处理!
Windows了解不是很深,这一步可能Windows会提供系统函数的调用.然后将音乐文件以对应声卡的协议,以流的方式向打开的串口里面写就OK了(跟写文件一样)!
上面是原理,其实你可以在网上收搜索具有音乐播放功能的动态链接库(windows下后缀应该是.dll),然后用C语言调用其中对应的函数就OK了.
评论列表(0条)