VC 播放聲音

#include <stdio.h>
#include <windows.h>
/*
SND_APPLICATION
用應用程序指定的關聯來播放聲音。

SND_ALIAS
pszSound參數指定了註冊表或WIN.INI中的系統事件的別名。

SND_ALIAS_ID
pszSound參數指定了預定義的聲音標識符。

SND_ASYNC
用異步方式播放聲音,PlaySound函數在開始播放後立即返回。

SND_FILENAME
pszSound參數指定了WAVE文件名。

SND_LOOP
重複播放聲音,必須與SND_ASYNC標誌一塊使用。

SND_MEMORY
播放載入到內存中的聲音,此時pszSound是指向聲音數據的指針。

SND_NODEFAULT
不播放缺省聲音,若無此標誌,則PlaySound在沒找到聲音時會播放缺省聲音。

SND_NOSTOP
PlaySound不打斷原來的聲音播出並立即返回FALSE。

SND_NOWAIT
如果驅動程序正忙則函數就不播放聲音並立即返回。

SND_PURGE
停止所有與調用任務有關的聲音。若參數pszSound爲NULL,就停止所有的聲音,否則,停止pszSound指定的聲音。

SND_RESOURCE
pszSound參數是WAVE資源的標識符,這時要用到hmod參數。

SND_SYNC
同步播放聲音,在播放完後PlaySound函數才返回。
4、舉例:

    在C:\WINDOWS\MEDIA目錄下有一個名爲The Microsoft Sound.wav的聲音文件,在Windows 95啓動時會播放這個聲音。下面我們用三種方法來調用PlaySound函數播出Windows 95的啓動聲音。

第一種方法是直接播出聲音文件,相應的代碼爲:

PlaySound("c:\\win95\\media\\The Microsoft Sound.wav", NULL, SND_FILENAME | SND_ASYNC);

注意參數中的路徑使用兩個連續的反斜槓轉義代表一個反斜槓。

第二種方法是把聲音文件加入到資源中,然後從資源中播放聲音。Visual C++支持WAVE型資源,用戶在資源視圖中單擊鼠標右鍵並選擇Import命令,然後在文件選擇對話框中選擇The Microsoft Sound.wav文件,則該文件就會被加入到WAVE資源中。假定聲音資源的ID爲IDR_STARTWIN,則下面的調用同樣會輸出啓動聲音:

PlaySound((LPCTSTR)IDR_STARTWIN, AfxGetInstanceHandle(), SND_RESOURCE | SND_ASYNC);

第三種方法是用PlaySound播放系統聲音,Windows啓動的聲音是由SystemStart定義的系統聲音,因此可以用下面的方法播放啓動聲音:

PlaySound("SystemStart",NULL,SND_ALIAS|SND_ASYNC);
*/
int main(void)
{
	::sndPlaySound("F:\\KEYVOL.WAV",SND_ASYNC);
	while(1)
	;
	return 0;
} 

 使用Dev-C++ 或者codeblock IDE需要加上這個命令才能編譯成功

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章