关于调试错误 Assertion Failed 问题

在VC、MFC工程中 ,编译没有错误,但是在调试时会出现 Assertion Failed错误,比如 Assertion Failed  afxwin2.inl Line139  ,这种错误往往定位不到错误点,以至于不好查找,下面以此问题为例,说一下如何解决:

1.首先找到afxwin2.inl,此文件一般在软件的安装目录下,可在软件安装目录文件夹下使用搜索功能,查找该文件,找到后将文件拷贝到其他地方,比如桌面;

2.用软件打开,我一般用Notepad++,打开后找到第139行,{ ASSERT(::IsWindow(m_hWnd)); ::InvalidateRect(m_hWnd, NULL, bErase); }

3. 这种大概意思是,句柄为空,查找是不是自己定义的类没关联控件等,如果不明白含义,将此行复制,百度一下,基本能找到相似问题以及解决办法。

你可能感兴趣的:(C++,MFC)