Visual Studio2019调试时禁止进入系统源码设置方式
Visual Studio Code 是微软提供的免费代码编辑器,支持 macOS,并为 Intel 与 Apple 芯片 Mac 提供适配版本。软件集代码编辑、调试、Git 源代码管理、集成终端和扩展市场于一体。
在 Visual Studio 2019 调试过程中,若希望跳过系统库代码而专注于用户代码,可通过“工具”->“选项”->“调试”->“常规”启用“仅我的代码”。本文详解该设置的开启方法、对调用堆栈的影响以及何时需要临时关闭该选项以排查底层问题。
在 Visual Studio 2019 中进行调试时,若发现执行流频繁跳入 .NET 框架或其他非用户编写的代码中,可以通过调整调试器的“仅我的代码”设置来优化体验。启用该功能后,调试器将优先在项目自有代码中单步执行,自动跳过系统库、框架及其他非用户代码,并在调用堆栈中将相关部分折叠显示。
打开调试常规选项
具体操作为:在菜单栏点击“工具”,选择“选项”,在左侧导航栏中展开“调试”节点并选中“常规”。在右侧面板中找到“启用‘仅我的代码’”复选框。为了确保调试器不进入系统源码,请确保该项处于勾选状态;若当前未勾选,请勾选后点击“确定”保存设置。

“启用仅我的代码”保持勾选时,调试器优先关注用户代码。
此设置仅影响调试器对非用户代码的处理方式,不会删除系统源码文件、移除项目引用或改变程序的实际运行逻辑。如果选项页面分类较多,请务必确认左侧树状菜单当前定位在“调试”下的“常规”页,以免误修改其他调试配置。
查看调用堆栈中的外部代码
重新开始调试后,使用“逐语句”或“单步执行”等调试命令时,启用“仅我的代码”会让调试器越过系统、框架和其他非用户代码,把注意力留在自己的代码路径上。微软文档说明,调用堆栈中的这类调用可以折叠成“[外部代码]”帧。

非用户代码可在调用堆栈中折叠显示为“外部代码”。
如果调用堆栈里看见“[外部代码]”,它表示相关调用帧被折叠,不代表程序没有执行这些库代码。需要查看时,可在调用堆栈窗口中使用“显示外部代码”显示被折叠的帧;这与是否能打开某个库的源码仍是两件事。
需要进入系统代码时再调整
仅在需要排查框架内部行为或系统调用时,才建议取消勾选此复选框。关闭“仅我的代码”后,调试器才会尝试单步进入非用户代码;此外,若目标是阅读微软系统代码,还必须确保已加载相应的调试符号。若缺少符号文件,即使取消勾选该选项,也无法保证能看到可读的源代码。

该设置让单步调试聚焦用户代码,并跳过非用户代码。
因此,在日常开发中若只需跟踪项目自身逻辑,建议保持该选项勾选;当需要深入调查外部调用时,再按需关闭该选项并配置好符号文件。完成排查后,建议回到同一选项页重新勾选该设置,以便后续的單步调试继续聚焦于项目代码。

































