情景一:
使用VS2010(对应VS2010版本Qt-4.8.6库)打开VS2008(对应VS2008版本Qt-4.8.6库)建立的工程,配置好相关参数后顺利通过编译并生成可执行文件。在运行时崩溃,提示“Unhandled exception at 0x777f15ee in Major.exe: 0xC0000005:Access violation reading location 2x2e302e30.(翻译:未处理的异常在0x777f15ee在major.exe:0xc0000005:存取违规阅读位置2x2e302e30。)”,按中断按钮进入调试,按Alt+7键查看Call Stack即“调用堆栈”里面从上到下列出的对应从里层到外层的函数调用历史。双击某一行可将光标定位到此次调用的源代码或汇编指令处,看不懂时双击下一行,直到能看懂为止。此时发现外部调用的DLL文件中QtCored4.dll中的某一函数出现在调用历史,故问题原因推断认为是外部调用的DLL文件同样使用了对应VS2008版本Qt-4.8.6库!
解决方案:重新调用使用对应VS2010版本Qt-4.8.6库编译生成新的DLL和LIB等文件!
来源:oschina
链接:https://my.oschina.net/u/2650669/blog/677980