使用mciSendString播放WAV文件,最好写一个例子。 如:打开mci设备 用别名播放 关闭mci设备(手边没有MSDN) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 包含winmm.lib #include <mmsystem.h>void PlayFile() { // TODO: Add your control notification handler code here char acTemp[100]; memset(acTemp,0,sizeof(acTemp)); sprintf(acTemp,"tmpdjh.wav"); unsigned long lRet = 0; MCI_OPEN_PARMS OpenParms; OpenParms.dwCallback = (DWORD)GetSafeHwnd(); OpenParms.lpstrDeviceType = (LPCSTR)MCI_DEVTYPE_WAVEFORM_AUDIO; OpenParms.lpstrElementName = (LPCSTR)acTemp; OpenParms.wDeviceID = NULL; lRet = mciSendCommand(NULL, MCI_OPEN, MCI_WAIT|MCI_OPEN_TYPE|MCI_OPEN_TYPE_ID|MCI_OPEN_ELEMENT, (DWORD)(LPVOID)&OpenParms); if(lRet==0) { MCI_PLAY_PARMS PlayParms; PlayParms.dwCallback = (DWORD)GetSafeHwnd(); MCI_SEEK_PARMS SeekParms; SeekParms.dwCallback = (DWORD)GetSafeHwnd(); PlayParms.dwFrom = SeekParms.dwTo = 20*1000;//(nMinute * 60 + nSecond) * 1000; //跳转的目标时间,时间单位为毫秒 mciSendCommand (OpenParms.wDeviceID, MCI_SEEK, MCI_TO|MCI_WAIT,(DWORD)(LPVOID)&SeekParms); lRet = mciSendCommand(OpenParms.wDeviceID, MCI_PLAY, MCI_FROM, (DWORD)(LPVOID)&PlayParms); } if(OpenParms.wDeviceID) { lRet = mciSendCommand(OpenParms.wDeviceID,MCI_STOP,NULL,NULL); lRet = mciSendCommand(OpenParms.wDeviceID,MCI_CLOSE,NULL,NULL); }} MFC框架程序中的错误 检测到你的系统尚未安装VC发布包? MFC 为同一个文档添加一个新的视图 用标签页实现切换 希望有大虾能指点下迷途我........ 请教gdi+在window2000下的设置问题 VC 读取TXT文件的问题! 新人用vc6 一个小问题把我搞晕了 郁闷啊! 鼠标钩子求助,判断怎样判断?解决了高分 我的问题比较特殊!请大虾看看! 大家一起来评论一下trolltech 的QT开发库怎样,见者散分:) 急~~~~~~如何在windows下实现 SLIP 协议的编程,在线等待 急急急急,请问:如何在编程中调用打印机硬字库?...................
#include <mmsystem.h>
void PlayFile()
{
// TODO: Add your control notification handler code here
char acTemp[100];
memset(acTemp,0,sizeof(acTemp));
sprintf(acTemp,"tmpdjh.wav");
unsigned long lRet = 0;
MCI_OPEN_PARMS OpenParms;
OpenParms.dwCallback = (DWORD)GetSafeHwnd();
OpenParms.lpstrDeviceType = (LPCSTR)MCI_DEVTYPE_WAVEFORM_AUDIO; OpenParms.lpstrElementName = (LPCSTR)acTemp; OpenParms.wDeviceID = NULL;
lRet = mciSendCommand(NULL,
MCI_OPEN,
MCI_WAIT|MCI_OPEN_TYPE|MCI_OPEN_TYPE_ID|MCI_OPEN_ELEMENT,
(DWORD)(LPVOID)&OpenParms);
if(lRet==0)
{
MCI_PLAY_PARMS PlayParms;
PlayParms.dwCallback = (DWORD)GetSafeHwnd();
MCI_SEEK_PARMS SeekParms;
SeekParms.dwCallback = (DWORD)GetSafeHwnd();
PlayParms.dwFrom = SeekParms.dwTo = 20*1000;//(nMinute * 60 + nSecond) * 1000;
//跳转的目标时间,时间单位为毫秒
mciSendCommand (OpenParms.wDeviceID, MCI_SEEK, MCI_TO|MCI_WAIT,(DWORD)(LPVOID)&SeekParms);
lRet = mciSendCommand(OpenParms.wDeviceID,
MCI_PLAY,
MCI_FROM,
(DWORD)(LPVOID)&PlayParms);
}
if(OpenParms.wDeviceID)
{
lRet = mciSendCommand(OpenParms.wDeviceID,MCI_STOP,NULL,NULL);
lRet = mciSendCommand(OpenParms.wDeviceID,MCI_CLOSE,NULL,NULL);
}
}