MIDI的意思是乐器数字接口:(Musical Instrument Digital Interface)它是早在微软开发Windows以前就有的一个用于电子键盘的标准。MIDI定义了一个传输和存储音乐信息的协议。
Win32 API 提供了几种处理MIDI数据的方法。在Windows中有很多方法播放MIDI文件。这里我们讨论一种最简单的方法。
ShellExecute (hWnd, "open", "c://windows//media//Canyon.mid", NULL, NULL, SW_SHOWNORMAL);
ShellExecute和ShellExecuteEx是两个功能强大的函数,毫不夸张地讲,他们能打开Windows中的任何文件。但是有一个缺点,当我们用他打开MIDI文件时,它启动的是多媒体播放器,却不能自动播放,还得用户手工点击“play”键。这一点在许多场合不实用。解决此问题的方法是使用Windows的MCI类来处理MIDI文件,就象下面这样:
HWND hMCIWnd;
hMCIWnd = MCIWndCreate(NULL, hInst, 0, "c://windows//media//Canyon.mid");
MCIWndPlay(hMCIWnd);
MCI类能处理所有类型的多媒体格式,使用MCI类还能在控件窗口或者自己的应用窗口中选择播放选项以及其它的类型的选项。注意:使用MCI类时必须包含vfw.h文件,并且将vfw32.lib加到输入库列表中。
[问题提出]
如何最简单的播放一个.wav文件?
[解决方法]
将你要播放的.wav文件引入VC的资源.做法:选ResourceView选项卡,任选一个文件夹右击,选Insert...,然后选导入,选你要导入的.wav,会导入二进制文件,资源叫"WAV"->IDR_WAVE1.
[程序实现]
在你要播放的函数中加入:
PlaySound(MAKEINTRESOURCE(IDR_WAVE1),AfxGetResourceHandle(),SND_ASYNC|SND_RESOURCE|SND_NODEFAULT)