MFC基于对话框编写一个简易音视频播放器解决方法

MFC基于对话框编写一个简易音视频播放器
在对话框中添加了一个windows Media Player控件,然后加了两个按钮--“打开”和“播放”。

我的问题是:打开一个avi格式的视频文件后,只有声音,却没有画面,这是为什么呢?是属性值没有设置好吗?

两按钮的消息响应函数:
void CtMediaPlayerDlg::OnBnClickedOpen()
{
// TODO: 在此添加控件通知处理程序代码
char szFileFilter[]=
"所有支持类型|*.mp3;*.wma;*.dat;*.wav;*.avi;*.mov;*.rmvb;*.mmm;*.mid;*.rmi;*.mpeg|"
"Mp3 File(*.mp3)|*.mp3|"
"Wma File(*.wma)|*.wma|"
"Video File(*.dat)|*.dat|"
"Wave File(*.wav)|*.wav|"
"AVI File(*.avi)|*.avi|"
"Movie File(*.mov)|*.mov|"
"Rmvb File(*.rmvb)|*.rmvb|"
"Media File(*.mmm)|*.mmm|"
"Mid File(*.mid;*,rmi)|*.mid;*.rmi|"
"MPEG File(*.mpeg)|*.mpeg|"
"All File(*.*)|*.*||";//文件类型过滤
CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,szFileFilter);
if(dlg.DoModal()==IDOK){
CString PathName=dlg.GetPathName();
PathName.MakeUpper();
m_mediaPlayer.put_FileName(PathName);
//m_mediaPlayer.put_DisplayMode(); //曾试想是不是要调用这个函数,但是不知道参数值是什么,网上也查不到  
}
}

void CtMediaPlayerDlg::OnBnClickedPlay()
{
// TODO: 在此添加控件通知处理程序代码
m_mediaPlayer.Play();
}



------解决方案--------------------
http://wxplayer.codeplex.com/
------解决方案--------------------
可能是不支持你那个AVI格式,就算是AVI视频,也有很多格式的
------解决方案--------------------
你选WMV的,就有声音和图像了.你可以把你打开的AVI文件放在其它播放器里,看看有没有图像就知道这个AVI的文件是不是没有图像,有的AVI只有声音没有图像