【问题标题】:Why won't Visual Studio step into 3rd party code?为什么 Visual Studio 不会进入第 3 方代码?
【发布时间】:2018-07-13 05:43:17
【问题描述】:

我已经查看了我能找到的关于这个主题的主题,但建议的解决方案似乎都没有帮助。那我再问问!

当我在调试模式下运行时,我的 Visual Studio 2015 不会进入我的 bin 文件夹中有 pdb 的第 3 方代码。我什至看到在 Visual Studio 加载符号时下载了 pdb 文件。当我尝试进入第 3 方代码时,Visual Studio 抱怨它找不到 .cs 文件。我尝试切换“仅启用我的代码”设置。 Visual Studio 使用 能够进入第 3 方代码;我不确定发生了什么变化。

我正在尝试进入单元测试的上下文,以防万一。 pdb 文件在我的单元测试 bin 目录中。

我的调试设置如下。我错过了什么?

编辑:右键单击调用堆栈中的方法的上下文菜单

【问题讨论】:

  • 打开调试 |调试时的模块,看看您的第三方组件的符号是否已加载。
  • 方便的工具 - 我不知道这个选项。但它看起来就在那里。感兴趣的 pdb 的符号状态列为“已加载符号”。
  • 请尝试右键单击要为其加载 pdb 的函数,然后转到“加载符号”。浏览正确的 pdb,然后按 OK。之后,它应该能够为该 pdb 中的调用提供信息。
  • @FletchZhou-MSFT,我在引用的 DLL 的基类中右键单击了一些方法,但似乎没有“加载符号”菜单项。任何想法为什么?
  • @ket 哦,对不起,它是通过调用堆栈窗口进行调试时中断

标签: c# visual-studio debugging visual-studio-2015 visual-studio-debugging


【解决方案1】:

确保您有源代码进行源代码调试。

pdb 文件只包含调试信息,类似于可执行代码和源代码之间的映射。使用 pdb VS 调试器知道每条指令在源文件中的位置,但它仍然需要有源文件才能向您显示代码。

当它找不到源文件时,VS 调试器将显示对话框以浏览源文件。所以没有源代码,VS 无法正确调试。

解决方法是使用一些工具,如 ResharperReflector 可以反编译它

【讨论】:

    猜你喜欢
    • 2019-01-14
    • 2019-11-23
    • 1970-01-01
    • 1970-01-01
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 2012-03-25
    • 1970-01-01
    相关资源
    最近更新 更多