我有一个非常奇怪的与自编码DLL调试有关的问题。我有一个MFC驱动的基于对话框的应用程序,几个静态链接的项目和几个在运行时加载的DLL项目。调试器忽略动态加载的DLL中的错误
我构建调试解决方案,运行应用程序,我可以很容易地调试这些DLL项目。现在的问题。如果在DLL中一些明显的运行时错误像下面
int* i = 0;
*i = 4;
调试断言没有错误,抛出也不例外,默默地返回甚至没有(看到)堆栈返回到怠速状态。看起来好像当我在语句*i = 4;
上点击F10时,控制权返回到主应用程序窗口,程序继续执行,因为什么都没有发生!如果代码中没有错误,则执行正常。但我希望在这种情况下可以断言错误!它们是 - 在主应用程序的代码中。
我使用LoadLibrary()函数将我的DLL加载到应用程序中。 DLL本身具有静态链接的MFC,与解决方案中的其他项目一样。
任何想法?甚至不知道谷歌有什么问题...