【问题标题】:How can I debug a referenced dll from Visual Studio 2012如何从 Visual Studio 2012 调试引用的 dll
【发布时间】:2015-04-24 14:32:27
【问题描述】:

在 Visual Studio 2012 中,我在同一个解决方案中有两个项目,比如 A 和 B。

B 是我前段时间完成编码的一个项目。在项目 A 中,我需要使用项目 B 中的一些类。为此,我在 A 中添加了对 B 的引用。

问题是当我尝试调试时。我也希望能够进入 B 的代码。我该怎么办?

我已经在A中复制了dll和pdb文件,但是没有结果。

【问题讨论】:

  • 我有两个项目的一个解决方案
  • 这没有明显的原因。但是,调试器可能无法找到其他解决方案中项目的源代码。右击解决方案A节点,Properties,Debug Source Files,添加目录。并删除“不查看”框中的任何内容,当调试器要求您找到源文件时单击“取消”时,条目会添加到那里。
  • 在我的项目“A”中,我使用行命令运行.exe,该命令包含对解决方案“B”中某个类的调用,我认为正是因为如此,调试不起作用
  • “不起作用”并不能帮助我们帮助您,您必须准确告诉我们出了什么问题。
  • 在我的 B 项目中,我收到此消息:当前不会命中断点。没有为此文档附加过程加载任何符号。知道我添加了 .pdb 和 .dll 文件

标签: c# .net debugging visual-studio-2012 dll


【解决方案1】:

听起来您通过添加对 .dll 的引用而不是项目来引用项目 B。在项目 A 中,右键单击引用 -> 添加引用。然后选择解决方案选项卡下的项目 B,而不是程序集选项卡中的 .dll。

【讨论】:

    【解决方案2】:

    撤消所有尝试引用 B 的操作,然后转到 A>References>Add Reference 在打开的窗口中选择“解决方案”(左侧面板),您将看到所有解决方案的项目,然后选择(检查)项目 B. 编译和调试。

    【讨论】:

      【解决方案3】:

      我尝试了很多解决方案,但这对我有用。

      1. 在解决方案属性 -> 调试源文件中,确保文件不在“不查找这些源文件”框中。

      2. 在工具 -> 选项 -> 调试中,取消选中要求源文件与原始语句完全匹配。

      3. 从库项目 bin 文件夹中重建和复制 dll 和 pdb 文件到引用的项目 bin 文件夹。

      4. 取消选中工具 -> 选项 -> 调试 -> 常规 -> 启用仅我的代码选项。

      5. 确保正确加载符号: 在 Debug 期间,遇到断点时,使用 Debug |窗户 |模块。找到目标 dll 文件并确保其 Symbol Status 为 Symbol Loaded。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-04-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-08
        • 2013-05-01
        相关资源
        最近更新 更多