OPENCV MFC 在MFC中显示视频的程序if(inDlg.DoModal()==IDOK)这句中止,求大神指教
voidCmfcOpenVideoDlg::OnBnClickedOpenvideo(){//TODO:在此添加控件通知处理程序代码charaviName[300];CF...
void CmfcOpenVideoDlg::OnBnClickedOpenvideo()
{
// TODO: 在此添加控件通知处理程序代码
char aviName[300];
CFileDialog inDlg(TRUE,NULL,NULL,NULL,NULL,NULL);
inDlg.m_ofn.lpstrFile=(LPSTR)&aviName[0];
if(inDlg.DoModal()==IDOK)
{
m_pVideoInfo->m_pCapture=cvCreateFileCapture(aviName);
if(m_pVideoInfo->m_pCapture)
{
m_pVideoInfo->m_FrameWidth=cvGetCaptureProperty(m_pVideoInfo->m_pCapture,CV_CAP_PROP_FRAME_WIDTH);
m_pVideoInfo->m_FrameHeight=cvGetCaptureProperty(m_pVideoInfo->m_pCapture,CV_CAP_PROP_FRAME_HEIGHT);
m_pVideoInfo->m_pFrameImage=cvCreateImage(cvSize(m_pVideoInfo->m_FrameWidth,m_pVideoInfo->m_FrameHeight),8,3);
cvZero(m_pVideoInfo->m_pFrameImage);
}
}
}
我做的是优酷视频里面OPENCV MFC 在MFC中显示视频的程序,可是做到这里运行时每次到if(inDlg.DoModal()==IDOK)这句就中止不知道为什么。。
中止后错误里有:
4IntelliSense: #error 指令: Please use the /MD switch for _AFXDLL buildsc:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxver_.h81
输出里有:
Detected memory leaks!
Dumping objects ->
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\dlgfile.cpp(51) : {746} normal block at 0x00000000005BF240, 152 bytes long.
Data: < > 98 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
mfcOpenVideoDlg.cpp(103) : {738} normal block at 0x00000000005BE6C0, 24 bytes long.
Data: < > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
(几百行。。。)
Object dump complete.
程序“[6580] mfcOpenVideo.exe: 本机”已退出,返回值为 3 (0x3)。
求大神指教! 展开
{
// TODO: 在此添加控件通知处理程序代码
char aviName[300];
CFileDialog inDlg(TRUE,NULL,NULL,NULL,NULL,NULL);
inDlg.m_ofn.lpstrFile=(LPSTR)&aviName[0];
if(inDlg.DoModal()==IDOK)
{
m_pVideoInfo->m_pCapture=cvCreateFileCapture(aviName);
if(m_pVideoInfo->m_pCapture)
{
m_pVideoInfo->m_FrameWidth=cvGetCaptureProperty(m_pVideoInfo->m_pCapture,CV_CAP_PROP_FRAME_WIDTH);
m_pVideoInfo->m_FrameHeight=cvGetCaptureProperty(m_pVideoInfo->m_pCapture,CV_CAP_PROP_FRAME_HEIGHT);
m_pVideoInfo->m_pFrameImage=cvCreateImage(cvSize(m_pVideoInfo->m_FrameWidth,m_pVideoInfo->m_FrameHeight),8,3);
cvZero(m_pVideoInfo->m_pFrameImage);
}
}
}
我做的是优酷视频里面OPENCV MFC 在MFC中显示视频的程序,可是做到这里运行时每次到if(inDlg.DoModal()==IDOK)这句就中止不知道为什么。。
中止后错误里有:
4IntelliSense: #error 指令: Please use the /MD switch for _AFXDLL buildsc:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxver_.h81
输出里有:
Detected memory leaks!
Dumping objects ->
f:\dd\vctools\vc7libs\ship\atlmfc\src\mfc\dlgfile.cpp(51) : {746} normal block at 0x00000000005BF240, 152 bytes long.
Data: < > 98 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
mfcOpenVideoDlg.cpp(103) : {738} normal block at 0x00000000005BE6C0, 24 bytes long.
Data: < > 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
(几百行。。。)
Object dump complete.
程序“[6580] mfcOpenVideo.exe: 本机”已退出,返回值为 3 (0x3)。
求大神指教! 展开
1个回答
展开全部
这个错误的解决方法如下:
修改如下设置:工程(Project)->属性(Properties)->配置属性(Configuration Properties)->c/c++->代码生成(Code Generation)->运行时库(Use run-time library)->多线程调试DLL(/MDd)(Multithreaded DLL/Debug Multithreaded DLL)
修改如下设置:工程(Project)->属性(Properties)->配置属性(Configuration Properties)->c/c++->代码生成(Code Generation)->运行时库(Use run-time library)->多线程调试DLL(/MDd)(Multithreaded DLL/Debug Multithreaded DLL)
更多追问追答
追问
可是我的工程配置里已经是这样了= =。。。
追答
那你只能考虑为何出现
Detected memory leaks! 内存溢出
mfcOpenVideoDlg.cpp(103) 103行有什么问题
微测检测5.10
2023-05-10 广告
2023-05-10 广告
您好!建议咨 深圳市微测检测有限公司,已建立起十余个专业实验室,企业通过微测检测就可以获得一站式的测试与认 证解决方案;(EMC、RF、MFi、BQB、QI、USB、安全、锂电池、快充、汽车电子EMC、汽车手机互 联、语音通话质量),认证遇...
点击进入详情页
本回答由微测检测5.10提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询