?? vc播放聲音.txt
字號:
一.播放聲音文件的簡單方法
在VC++ 中的多媒體動態連接庫中提供了一組與音頻設備有關的函數。利用這些函數可以方便地播放聲音。最簡單的播放聲音方法就是直接調用VC++中提供的聲音播放函數BOOL sndPlaySound ( LPCSTR lpszSound,UINT fuSound ; 或BOOL PlaySound( LPCSTR lpszSound, HMODULE hmod, DWORD fuSound ;其中參數lpszSound是需要播放聲音的.WAV文件的路徑和文件名, hmod在這里為NULL,fuSound是播放聲音的標志,詳細說明請參考VC++中的幫助。 例如播放C:\sound\music.wav可以用sndPlaySound ("c:\\sound\\music.wav",SND_ASYNC);或PlaySound("c:\\sound\\music.wav",NULL, SND_ASYNC|SND_NODEFAULT ;如果沒有找到music.wav文件,第一種格式將播放系統默認的聲音,第二種格式不會播放系統默認的聲音。
二.將聲音文件加入到程序中
在VC++的程序設計中,可以利用各種標準的資源,如位圖,菜單,對話框等。同時VC++也允許用戶自定義資源,因此我們可以將聲音文件作為用戶自定義資源加入程序資源文件中,經過編譯連接生成EXE文件,實現無.WAV文件的聲音播放。
要實現作為資源的聲音文件的播放,首先要在資源管理器中加入待播放的聲音文件(實現過程并不復雜,這里不在敘述)。假設生成的聲音文件資源標識符為IDR_WAVE1。在播放時只需要調用下面的語句:
PlaySound(MAKEINTRESOURCE(IDR_WAVE1),AfxGetResourceHandle(), SND_ASYNC|SND_RESOURCE|SND_NODEFAULT|SND_LOOP);
其中MAKEINTRESOURCE()宏將整數資源標識符轉變為字符串,AfxGetResourceHandle()函數返回包含資源的模塊句柄,
SND_RESOURCE是必須的標志。
作為資源的聲音文件的第二種播放方法是把資源讀入內存后作為內存數據播放。具體步驟入下:
1.獲得包含資源的模塊句柄:
HMODULE hmod=AfxGetResourceHandle();
2.檢索資源塊信息:
HRSRC hSndResource=FindResource(hmod,MAKEINTRESOURCE(IDR_WAVE1),_T("WAVE";
3. 裝載資源數據并加鎖:
HGLOBAL hGlobalMem=LoadResource(hmod,hSndResource);
LPCTSTR lpMemSound=(LPCSTR)LockResource(hGlobalMem);
4.播放聲音文件:
sndPlaySound(lpMemSound,SND_MEMORY));
5.釋放資源句柄:
FreeResource(hGlobalMem);
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -