vc6怎麼使用playsound函數
PlaySound是WindowsAPI函數,使用時需要在#include<windows.h>後面加上#include <mmsystem.h>、#pragmacomment(lib, ")。
第一種方法是直接播出聲音文件,相應的代碼為:
1
PlaySound("c:WINDOWSMEDIAThe Microsoft ", NULL, SND_FILENAME | SND_ASYNC)
注意參數中的路徑使用兩個連續的反斜槓轉義代表一個反斜槓。
第二種方法是把聲音文件加入到資源中,然後從資源中播放聲音。Visual C++支持WAVE型資源,用户在資源視圖中單擊鼠標右鍵並選擇Import命令,然後在文件選擇對話框中選擇The Microsoft 文件,則該文件就會被加入到WAVE資源中。假定聲音資源的ID為IDR_STARTWIN,則下面的調用同樣會輸出啟動聲音:
1
PlaySound((LPCTSTR)IDR_STARTWIN, AfxGetInstanceHandle(), SND_RESOURCE | SND_ASYNC)
////////上面的(LPCTSTR)可能需改成(LPCWSTR)
第三種方法是用PlaySound播放系統聲音,Windows啟動的聲音是由SystemStart定義的系統聲音,因此可以用下面的方法播放啟動聲音:
1
PlaySound("SystemStart",NULL,SND_ALIAS|SND_ASYNC)
函數sndPlaySound的功能與PlaySound類似,但少了一個參數。函數的聲明為:
BOOL sndPlaySound(LPCSTR lpszSound, UINT fuSound)
除了不能指定資源名字外,參數lpszSound與PlaySound的是一樣的。參數fuSound是如何播放聲音的標誌,可以是SND_ASYNC、SND_LOOP、SND_MEMORY、SND_NODEFAULT、SND_NOSTOP和SND_SYNC的組合,這些標誌的含義與PlaySound的一樣。
可以看出,sndPlaySound不能直接播放聲音資源。要用該函數播放WAVE文件,可按下面的方式調用:
sndPlaySound(“”,SND_ASYNC)