opencv 在MFC中的使用有关问题

opencv 在MFC中的使用问题
CV在 MFC中使用报错,可能是一些BUG, 哪位大神解释下。
opencv 版本 2.4.3
开发环境 vs2008
模式 debug 

报错1:
本人在MFC中使用OPENCV 2.4.3 使用format 函数发生问题。
经反复调试,发现单独调用以下一句。
cv::format("d Target confirmed");
会报错: Windows 已在 XXX.exe 中触发一个断点。
而在 win32 控制台中, 是不报错的。 高人指点。
前后代码无需贴出了, cv::format("d Target confirmed");与上下文都不相关就错了。

报错2:
vector< vector<Point> > contours;
findContours(canny_output, contours, CV_RETR_EXTERNAL, CV_CHAIN_APPROX_SIMPLE, Point(0, 0) );
以上代码的问题是只要contours作用域结束,即contour析构时,程序就报错。
use mfc in share dll加运行时库MDd就不不会报错,但内存泄露。
难道mfc 没法用opencv2.3关于轮廓检测的新特性?请教高手怎么让程序不报错,又不内存泄露。

以上代码在win32控制台下均可正常调用 ,请高手解释。其中问题2转自CV中国, 本人也遇到类似问题在此贴出。谢谢。分比较少,请谅解。
mfc opencv

------解决方案--------------------
崩溃的时候在弹出的对话框按相应按钮进入调试,按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处。

------解决方案--------------------
把项目的属性从 共享dll 改为 在静态库中使用 MFC
------解决方案--------------------
在配置属性->常规->MFC的使用中,将在静态库中使用MFC改为在共享DLL中使用MFC。
我也遇到与你相同的问题,但是使用动态会会有内存泄漏的问题,两难啊!