之前做的一个项目,在windows7的环境下使用VS2010开发的单文档项目,在win7下一切正常。
但是由于需要,在WindowsXP下的VS2010环境下编译的程序,在退出时总是会报内存错误。无论调试退出还是release程序关闭时都会报。之前就考虑可能是VS2010本身的内存泄露,但是很疑惑在Win7下的VS2010却没有这个问题,查找到报错中断停留在如下地方:
if (m_hThemeToolBar != NULL)
{
.......
}
搜了一下,找到了解决方案:
只需要在主程序的ExitInstance函数中增加CMFCVisualManager::DestroyInstance(TRUE);语句即可解决问题。
原因似乎是VS2010本身的部分控件存在内存泄露的问题。
原文链接:点击打开链接