多媒体MCI的简单编程

MCI 是Windows提供多媒体设备的接口。

 

MCI 的编程步骤 : 发送 MCI_OPEN 命令打开设备--->发送MCI_PLAY 命令播放设备---->发送MCI_CLOASE

 

使用mciSendCommand函数可以向指定的设备发送一个命令,mciSendCommand的定义如下

 

MCIERROR mciSendCommand( MCIDEVICEID IDDevice, //设备ID UINT uMsg, //命令类型 DWORD fdwCommand, //命令标志位 DWORD dwParam //命令参数 );  

 

 

下面的一个示例 打开 MP3文件播放

 

#include "stdafx.h" #include #pragma comment(lib,"winmm.lib"); int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { //1.打开设备 MCI_OPEN_PARMS openParms;//MCI_OPEN命令需要参数结构体 openParms.lpstrDeviceType="MPEGvideo";//MP3的文件设备ID为MPEGvideo openParms.lpstrElementName="C://1.MP3";//MP3文件的存放路径 //发送命令 mciSendCommand( NULL,//打开设备不需要设备ID MCI_OPEN,//MCI_OPEN,此命令表示打开设备 MCI_OPEN_ELEMENT|MCI_OPEN_TYPE|MCI_WAIT, (DWORD)(LPVOID(&openParms)));//传递MCI_OPEN_PARMS参数 /*MCI_OPEN_ELEMENT 表示MCI_OPEN_PARMS的lpstrElementName有效 MCI_OPEN_TYPE表示MCI_OPEN_PARMS的lpstrDeviceType有效 MCI_WAIT表示命令发送后会一直等待,知道操作完成 (如果是MCI_NOTIFY,则表示发送命令后会立即返回,当操作真正完毕后发出通告消息)*/ //设备打开完毕,设备ID被存放到openParms.wDeviceID中 WORD m_wDeviceID=openParms.wDeviceID; //2、播放设备 MCI_PLAY_PARMS playParms;//MCI_PLAY命令需要的参数结构体 mciSendCommand( m_wDeviceID,//需要的设备ID MCI_PLAY,//此命令播放设备 MCI_WAIT,//等待播放文件结束,然后返回 (DWORD)(LPVOID(&playParms)));//传递MCI_PLAY_PARMS参数 //3,关闭设备 mciSendCommand( m_wDeviceID, MCI_CLOSE, NULL, NULL); return 0; }  

 

 

MCI 支持的格式有限,因此用来开发播放器,会有些困难,但是在制作闹铃,提示音乐上还是很不错的。

 

 

 

你可能感兴趣的:(VC/MFC,之,硬件/系统)