什么是'只是我的代码'?

时间:2015-08-17 11:05:06

标签: visual-studio

Visual Studio有一个选项(在Debugging / General下)“Enable Just My Code”

什么是'只是我的代码'? Visual Studio不解释该功能。

enter image description here

4 个答案:

答案 0 :(得分:37)

来自msdn article

  启用我的代码      

启用此功能后,调试器仅显示和步入用户代码(“我的代码”),忽略系统代码和其他优化的代码或没有调试符号的代码。

答案 1 :(得分:10)

只要该功能是不言自明的-调试器会跳过外部代码-我认为值得一提的是根据Microsoft的实际情况,“我的代码”是什么。在.NET项目的上下文中,是:

不是我的代码:

  • 任何优化的库(例如发布模式)
  • 没有.pdb的库(没有调试符号)
  • 标有[DebuggerNonUserCode][DebuggerHidden]的类或成员。另外[DebuggerStepThrough]也会影响

我的代码:

  • 任何加载了.pdb(带有调试符号)的项目,以上都不适用

查看调试器如何处理项目依赖项以及是否加载了调试符号的一种简单方法是检查“模块”窗口(Debug -> Windows -> Modules,仅在调试期间可见),该窗口提供了{{1} }列。

实际上,调试时,任何非用户代码都标记为[外部代码]。

答案 2 :(得分:1)

您需要PBO来调试其他代码,例如可能静态或动态链接到您的代码的任何库。使用上面的选项,您只需调试(您的)活动部分代码。




答案 3 :(得分:0)

修复它的快速方法,或者我们可以说在默认调试状态下运行您的代码是:

在 Visual Studio 工具托盘中找到解决方案配置选项,将所选选项更改为“调试”。

Change Solution Configuration To Debug