如何设置Visual Studio调试时不在未处理异常处中断
Visual Studio 调试模式下禁用所有异常中断的补充设置
已取消异常设置窗口中所有「抛出时中断」复选框仍触发异常中断时,按以下顺序检查剩余配置:
- 配置调试常规选项
打开顶部菜单栏「工具」→「选项」→「调试」→「常规」:- 勾选*「启用仅我的代码(仅限托管)」*:未开启该选项时,VS会追踪系统框架、第三方库等非用户代码内的所有异常抛出行为,不受全局异常中断开关控制
- 取消勾选*「当异常跨越AppDomain或托管/本机边界时中断」*:该选项开启时,跨边界传递的异常无论是否被处理都会触发中断
- 关闭未处理异常中断开关
打开调试状态下的「调试」→「窗口」→「异常设置」,点击窗口工具栏的筛选按钮,取消勾选*「在未被用户代码处理的异常处中断」* - 关闭托管调试助手(MDA)中断
进入「工具」→「选项」→「调试」→「托管调试助手」页面,取消列表中所有MDA项对应的「抛出时中断」复选框。MDA的中断逻辑独立于普通异常设置,不会被全局异常中断开关覆盖 - 核对混合调试专项配置
如果项目开启了「启用本机代码调试」的混合调试模式,回到异常设置窗口,分别展开「C++异常」「Win32异常」节点,确认所有子项的「抛出时中断」复选框都已取消。原生代码异常配置与托管代码配置独立存储,取消托管类异常勾选不会同步生效到原生异常配置
相关设置参考截图:
提示:部分旧版本Visual Studio的异常配置需要重启IDE后才能完全生效,修改完成后建议重启VS再启动调试。
内容的提问来源于stack exchange,提问作者William Jockusch
相关产品推荐
相关产品推荐

