如何播放WAV文件?有几种方法?
目前按照例子做了一个使用MCI播放wav的方法,但是在我的程序里运行不了#include "MCI32.h"
#include <utility.h>
#include <cvirte.h>
#include <userint.h>
#include "playsound.h"
static CAObjHandle objectHandle;
static int panelHandle;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "playsound.uir", PANEL)) < 0)
return -1;
GetObjHandleFromActiveXCtrl (panelHandle, PANEL_MMCONTROL, &objectHandle);
DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
return 0;
}
int CVICALLBACK Panel (int panel, int event, void *callbackData,
int eventData1, int eventData2)
{
switch (event)
{
case EVENT_CLOSE:
MCI_ImciSetCommand(objectHandle, NULL, "close");
QuitUserInterface (0);
break;
}
return 0;
}
int CVICALLBACK Play (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
char pathname;
GetDir (pathname);
strcat (pathname, "\\pass.wav");
switch (event)
{
case EVENT_COMMIT:
MCI_ImciSetCommand(objectHandle, NULL, "close");
MCI_ImciSetFileName (objectHandle, NULL, pathname);
MCI_ImciSetCommand (objectHandle, NULL, "play");
Delay (2);
break;
}
return 0;
}
表现是点击界面paly 程序没任何反应
同时想请教一下有没有别的方法可以播放wav的?
[ 本帖最后由 南野 于 2008-6-20 18:45 编辑 ] 最好能上传个程序,兄弟!这样直接贴代码,没有办法调试的,因为没有UIR等相关的东西不容易调! 可以用ACTIVEX来播放WAV!就是MEDIA那个ACTIVEX来播是可以的! 代码来了 我用那个ACTIVEX做过视频播放!呵呵,这个WAV的应该是一样的!我下载下来瞧瞧再说! 怪了,我这里说一个ACTIVEX控件找不到,但是这个控件在前面板上面也找不到! 应该要插入一个ACTIVEX控件才行,兄弟您放的是一个TEXT!您这个例子是从哪里来的呢? 控件在activex里,名字是 Microsoft Mutil Media Control 6.0 晕死....
文件名没写对....
服了自己了 没有插入控件呀兄弟,里面的是TEXT的文字,您是不是写错了呢?ACTIVEX不用自己输入名字的,要将ACTIVEX那个东东放到前面板,然后再生成它的驱动才可以正式使用! 对应该就是生成驱动的问题了
再试了一次 可以了现在
页:
[1]