CFileDialog dlg(TRUE, NULL, NULL,
OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_HIDEREADONLY,
NULL, NULL); // 选项图片的约定
dlg.m_ofn.lpstrTitle = _T("打开视频文件"); // 打开文件对话框的标题名
dlg.m_ofn.lpstrFilter=_T("*.mp4|*.mp4|*.dav|*.dav|*.avi|*.avi|*.rmvb|*rmvb|*.mkv|*.mkv| *.wmv|*.wmv| 视频文件 (*.*) |*.*||");
if( dlg.DoModal() != IDOK ) // 判断是否获得图片
return;
CString mPath = dlg.GetPathName(); // 获取图片路径
if (m_cam.isOpened())
{
m_cam.release();
}
if(!m_cam.open(LPCSTR(mPath)))
{
MessageBox("打开视频出错!");
}
else
{
// 显示图像参数
m_cam>>m_mat1;
char chEdit[10];
_itoa(m_mat1.cols,chEdit,10);
SetDlgItemText(IDC_EDIT_Realw,chEdit);
_itoa(m_mat1.rows,chEdit,10);
SetDlgItemText(IDC_EDIT_Realh,chEdit);
m_bProcess = FALSE;
m_bDestory = FALSE;
// 刷新显示区
Invalidate(TRUE);
// 设置定时器
SetTimer(1, 80, NULL);
在自己电脑可以,在别人电脑会执行if(!m_cam.open(LPCSTR(mPath)))
{
MessageBox("打开视频出错!");
}
是什么问题?该怎么解决?