我的vs调试器有一个奇怪的问题。当在vs调试器下运行我的程序时,调试器不会中断未处理的异常。相反,控制返回到VS,就像程序正常退出一样。如果我查看输出选项卡,那么在线程终止之前会列出第一次执行的任务。VS2008调试器在未处理的异常时没有中断
我知道如何使用“例外”框中,从调试菜单。我有检查未处理的异常中断。如果我检查发生特定的exeption的第一次机会异常,调试器将停止。
但是,我的理解是,调试器也应该停止在任何“未处理 - 例外”。这不是为我做的。
这里是我的输出选项卡的最后几行:
A first chance exception of type 'System.ArgumentOutOfRangeException' occurred in mscorlib.dll
The thread 0x60c has exited with code 0 (0x0).
The program '[3588] ALMSSecurityManager.vshost.exe: Managed' has exited with code -532459699 (0xe0434f4d).
我不明白为什么例外是flagges为“第一次机会”异常时,它是未经处理的。
我相信0xe0434f4d退出代码是一个通用的COM错误。
什么想法?
地铁。
我保证,它没有没有恶意!可选方案是让您的机器额外运行,超级缓慢(不断保存完整的寄存器上下文),或者在用户模式回调中发生SEH异常时立即启动应用程序。好消息是,用户模式回调在窗口过程中是完全(*)的,所以这不会影响服务应用程序,也不会影响工作线程(即任何非窗口线程) – 2011-01-14 08:24:58