怎么使用c++ windows gdi或者借用dx播放mp3

如何使用c++ windows gdi或者借用dx播放mp3?
不使用mfc,谢谢赐教

------解决方案--------------------
directsound不知道行不行
而且dx带的例子一般都是sdk写的,没用mfc,可以去看看

还有不知道楼主说的windows gdi播放mp3是个什么概念,一个是图像处理的,一个是音频的,不知道是不是windows api(sdk)呢? :)
------解决方案--------------------
#include <windows.h>
#include <stdio.h>
#include <mmsystem.h>

#pragma comment(lib, "winmm.lib ")

void main()
{
char buf[128];
//use mciSendString()
//mciSendString( "play e:\\songs\\从头再来.mp3 ",buf,sizeof(buf),NULL);
//mciSendString( "play e:\\songs\\zhj.mp3 ",buf,sizeof(buf),NULL);
char str[128] = {0 };
int i = 0;

//use mciSendCommand
MCI_OPEN_PARMS mciOpen;
MCIERROR mciError;
SetWindowText(NULL, "12345 ");
//mciOpen.lpstrDeviceType = (LPCTSTR)MCI_ALL_DEVICE_ID;
//mciOpen.lpstrDeviceType = "waveaudio "; //只能播放.wav文件
//mciOpen.lpstrDeviceType = "avivideo "; //*.avi
mciOpen.lpstrDeviceType = "mpegvideo ";
//mciOpen.lpstrDeviceType = "sequencer ";
mciOpen.lpstrElementName = "从头再来.mp3 ";
//mciOpen.lpstrElementName = "e:\\movie\\first.avi ";
//mciOpen.lpstrElementName = "c:\\winnt\\media\\Windows 登录音.wav ";
mciError = mciSendCommand(0,MCI_OPEN,MCI_OPEN_TYPE | MCI_OPEN_ELEMENT,(DWORD)&mciOpen);
if(mciError)
{
mciGetErrorString(mciError,buf,128);
printf( "send MCI_OPEN command failed:%s\n ",buf);
return;
}
UINT DeviceID = mciOpen.wDeviceID ;
MCI_PLAY_PARMS mciPlay;

mciError = mciSendCommand(DeviceID,MCI_PLAY,0 ,(DWORD)&mciPlay);
if(mciError)
{
printf( "send MCI_PLAY command failed\n ");
return;
}
while(1)
{
sprintf(str, "now playing\t%d\tseconds ",i);
printf( "%s\r ",str);
i++;
Sleep(1000);
}
}


------解决方案--------------------
楼上的正解.
用WIN32API函数mciSendCommand
------解决方案--------------------
GDI是不能播放mp3的,呵呵
除了mciXXX系列高层API,你还可以采用waveOutXXX系列API和DirectSound API,
当然mp3的解码要你自己负责了,这些API只处理wav格式数据流

--------------------
/************************************
* 伟大的GNU,伟大的Linux
*本帖用Debian系统,IceWeasel浏览器回复!
*************************************/
------解决方案--------------------
看mci相关
------解决方案--------------------
阅读directx sdk的文档,看其示例代码。

------解决方案--------------------
directshow