作者:朱金灿
来源:http://blog.csdn.net/clever101/
同事问我一个奇怪的问题:程序在他的机子上运行的好好的,但是其它人下载了源码之后可以编译通过,但是debug模式下调试运行到应用程序类中的InitInstance函数中的
if (!ProcessShellCommand(cmdInfo))一句时,总是出现一个
Debug Assertion Failed.
File: afxhtml.inl
Line:57
我认为首先需要判断哪个模块导致了这个Debug Assertion Failed。于是我查看调用堆栈,发现最后加载的是一个mfc042d.dll。同事的输出文件夹下有一个mfc042d.dll。但是我想既然是VC 6.0开发的,加载的应该是mfc42d.dll,而不是mfc042d.dll。我初步判断这是加载了错误的DLL库,于是试着删除了输出文件夹下的mfc042d.dll。果然程序没有出现Debug Assertion Failed,能够顺利运行了。