怎么样用vc播放wav声音文件? 怎么样用vc播放wav声音文件? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 关注这个问题我在基于对话框中用playsound,与sndplaysound时出现错误,不知怎么回事 Window Media Player控件 极其好用 我生成一个mfc对话框程序,在响应一个按钮里添加sndPlaySound(("D:\\sound\\music.wav",SND_ASYNC); 报错,说没有定义。这个函数不是在"windows.h"里吗?我也包含了,可还是说不行请高手指教 注意要包含lib Header: Declared in Mmsystem.h. Library: Use Winmm.lib. 请参考下面:http://www.codeproject.com/audio/ mciSendCommandmciSendString这两个都可以 DirectShow也可以,还可以播放更多的声音.具体的你看以前的帖子 #include “mmsystem.h”#pragrma comment(lib,“winmm.lib”)::PlaySound(strFileName, NULL, SND_NOWAIT); Window Media Player控件 极其好用??用这个怎么声道啊! 呵呵,用MCI好了播放声音我们可以使用MCI来简易地实现在程序中播放MIDI和WAV等声音。使用它需要预先声明,我们需要在文件头#include <mmsystem.h>,并在工程中加入"winmm.lib"下面先让我们看看播放MIDI的过程。首先我们要打开设备:MCI_OPEN_PARMS OpenParms;OpenParms.lpstrDeviceType = (LPCSTR) MCI_DEVTYPE_SEQUENCER; //是MIDI类型文件OpenParms.lpstrElementName = (LPCSTR) filename; //文件名OpenParms.wDeviceID =1; //打开的设备的标识,后面需要使用mciSendCommand (NULL, MCI_OPEN, MCI_WAIT | MCI_OPEN_TYPE | MCI_OPEN_TYPE_ID | MCI_OPEN_ELEMENT,(DWORD)(LPVOID) &OpenParms); //打开设备 接着就可以播放MIDI了:MCI_PLAY_PARMS PlayParms;PlayParms.dwFrom = 0; //从什么时间位置播放,单位为毫秒mciSendCommand (1, MCI_PLAY, //DeviceID需等于上面的设备标识MCI_FROM, (DWORD)(LPVOID)&PlayParms); //播放MIDI 停止播放: mciSendCommand (1, MCI_STOP, NULL, NULL); 最后要关闭设备: mciSendCommand (1, MCI_CLOSE, NULL, NULL); 打开WAV文件与打开MIDI文件的方法几乎完全相同,只是需要将MCI_DEVTYPE_SEQUENCER 改为MCI_DEVTYPE_WAVEFORM_AUDIO。如果你觉得太麻烦,你可以去www.codeproject.com中audio专栏中找一些封装好的例子,用起来很方便。-------------------------- May you succeed! ---------------------- 跪求。。单文档cformview类窗口 中tab控件关联的子窗口怎样调用cformview类窗口的函数啊? 线程问题!新手求教 LIST可以实现批量删除么? 如何让程序自动加入windows自带防火墙的允许运行列表中。 请教Visual C++2003.NET编译器问题 请教怎么用vc++将二进制数据读写XML文档的节点中 如何自动开机? 何为托盘类?其主要是干什么用的? 小CASE提问 开发基于网卡的程序能否不通过TCP/IP协议而通过自定义协议做 小问题,解决立即给分,在线等。 在线请教,找错,关于CPropertySheet
sndPlaySound(("D:\\sound\\music.wav",SND_ASYNC);
报错,说没有定义。这个函数不是在"windows.h"里吗?我也包含了,可还是说不行
请高手指教
Header: Declared in Mmsystem.h.
Library: Use Winmm.lib.
http://www.codeproject.com/audio/
mciSendString
这两个都可以
具体的你看以前的帖子
#pragrma comment(lib,“winmm.lib”)::PlaySound(strFileName, NULL, SND_NOWAIT);
用这个怎么声道啊!
我们可以使用MCI来简易地实现在程序中播放MIDI和WAV等声音。使用它需要预先声明,我们需要在文件头#include <mmsystem.h>,并在工程中加入"winmm.lib"
下面先让我们看看播放MIDI的过程。首先我们要打开设备:
MCI_OPEN_PARMS OpenParms;
OpenParms.lpstrDeviceType =
(LPCSTR) MCI_DEVTYPE_SEQUENCER; //是MIDI类型文件
OpenParms.lpstrElementName = (LPCSTR) filename; //文件名
OpenParms.wDeviceID =1; //打开的设备的标识,后面需要使用
mciSendCommand (NULL, MCI_OPEN,
MCI_WAIT | MCI_OPEN_TYPE |
MCI_OPEN_TYPE_ID | MCI_OPEN_ELEMENT,
(DWORD)(LPVOID) &OpenParms); //打开设备
接着就可以播放MIDI了:
MCI_PLAY_PARMS PlayParms;
PlayParms.dwFrom = 0; //从什么时间位置播放,单位为毫秒
mciSendCommand (1, MCI_PLAY, //DeviceID需等于上面的设备标识
MCI_FROM, (DWORD)(LPVOID)&PlayParms); //播放MIDI
停止播放:
mciSendCommand (1, MCI_STOP, NULL, NULL);
最后要关闭设备:
mciSendCommand (1, MCI_CLOSE, NULL, NULL);
打开WAV文件与打开MIDI文件的方法几乎完全相同,只是需要将MCI_DEVTYPE_SEQUENCER 改为MCI_DEVTYPE_WAVEFORM_AUDIO。
如果你觉得太麻烦,你可以去www.codeproject.com中audio专栏中找一些封装好的例子,用起来很方便。--------------------------
May you succeed!
----------------------