在Visual Studio中运行我的应用程序时,它以未处理的异常结束,而不是显示带有异常信息的消息框,并按照我习惯的方式继续。
我需要更改哪些选项才能恢复到我以前的行为?
编辑:在调试/例外中我确实为CLR例外选择了用户未处理的选项。
答案 0 :(得分:31)
Debug->Exceptions->Check Thrown/User-Unhandled
编辑:也许尝试进行清理/重建,然后再次运行?也许调试符号已损坏或其他东西..
答案 1 :(得分:24)
答案 2 :(得分:20)
根据应用程序的不同,以下选项可能对您有所帮助:
工具→选项...→调试→常规
答案 3 :(得分:16)
就我而言,当我去 Debug - > 异常, User-unhandled 列丢失了。转到调试 - > 选项和设置并启用启用我的代码修复此问题,从而完全解决了这个问题。
答案 4 :(得分:4)
这为我解决了这个问题:快速lauch(Ctrl-Q)类型“ResetToC#”(或ResetTo别的东西)
我长期遇到同样的问题。在Debug-> Exceptions菜单中,缺少“User-unhandled”列!非常讨厌。
我卸载了所有插件,重新安装了VS,但没有任何效果(Visual Studio可能在我的机器上留下了一些重新安装后重复使用的设置)。
这可能看起来不是最好的解决方案,因为必须在某个地方进行某些设置。我找不到它,并且在几个月无法打破用户未处理的异常之后,ResetToC#选项是一种解脱。
答案 5 :(得分:3)
我在一个非常大的C#项目中在Visual Studio 2013中遇到了同样的问题。但是,如果我创建了一个新的空项目并抛出了一个测试ApplicationException,那么一切都会按预期工作,调试器会中断并给我异常助手。在我现有的项目上执行相同操作只会停止调试并返回到VS编辑模式。我注意到"输出"窗口,最后一个调试跟踪将显示
该程序' [2624] MyApplication.vshost.exe'退出了代码 -1073741819(0xc0000005)'访问违规'。
我真的没有把所有东西都复制到一个新项目中,上面没有任何建议对我有用。通过反复试验,我找到了一些有效的方法:取消选中"在未处理的例外情况下展开调用堆栈"在选项>下调试>一般>启用例外助手。
顺便说一下,如果我通过异常助手手动强制调用堆栈在同一个C#项目上展开(通过单击"启用编辑"链接),调试器就会关闭,我可以&#39 ; t编辑并继续。但是在一个新项目中,它可以放松,编辑并继续工作就好了!所以我的项目确实存在一些VS不喜欢的东西,但我现在将其作为一种可接受的解决方法。
答案 6 :(得分:2)
唯一对我有用的是:
工具 - >导入和导出设置 - >重置所有设置,然后重置为C#。
答案 7 :(得分:1)
答案 8 :(得分:0)
将目标平台从x64更改为x86帮助我
答案 9 :(得分:0)
如果解决方案中有多个Web站点项目,请检查要调试的项目是否处于活动状态。右键单击它并选择设置为启动项目。
这让我感到困惑,因为没有明显的暗示错误的网站正在被调试。
答案 10 :(得分:0)
对我唯一有用的是取消选中“使用新的异常帮助程序”。让它捕获异常,停止程序,启用“使用新的异常帮助器”,然后VS2019神奇地开始再次捕获未处理的异常。
我在VS 2019中仍然找不到“用户未处理”的地方,但至少现在可以使用。
答案 11 :(得分:0)