flash控件加载swf播放器,播放flv文件的问题
- C/C++ code
CFileDialog dlg(TRUE,NULL,NULL,OFN_ALLOWMULTISELECT,"flv File (*.flv)|*.flv"); dlg.GetPathName();*/ CFileDialog dlg(TRUE, NULL, NULL,NULL,NULL, this);//所有可以打开的文件类型 if(dlg.DoModal()==IDOK) { flash.LoadMovie(0,L"F:\\vcastr2.swf"); flash.Play(); strl = dlg.GetPathName();////////取出文件路 //strl=m_FilePath;//将文件的路径放入m_p //strl.Replace("\\","/"); flash.put_FlashVars(strl); //flash.put_FlashVars(L"vcastr_file=c:\\123.flv"); flash.LoadMovie(0,L"F:\\vcastr2.swf"); flash.Play(); UpdateData(FALSE);就这样 提示加载影片错误 传个影片文件的路径就可以 但是用字符串获取的文件路径传过去 就播放不了
[解决办法]
传参之前先把字符串格式化一下 L"vcastr_file=c:\\123.flv" 格式化成这样的
[解决办法]
转成宽字符
CStringW MultiByteToWideChar T2W都可以
- C/C++ code
#include <AtlConv.h>strl = dlg.GetPathName();////////取出文件路USES_CONVERSION;LPWSTR wFileName = T2W(strl);flash.LoadMovie(0, wFileName);flash.Play();