【问题标题】:Debugging with Pdb file and Source Code File in Visual Studio在 Visual Studio 中使用 Pdb 文件和源代码文件进行调试
【发布时间】:2017-11-07 01:24:00
【问题描述】:

我有一个 Web 项目,它从客户端代码发布到外部 dll 中的方法,我有这个外部 dll 的源代码文件和 pdb 文件。我想做的是使用源代码文件和 pdb 调试外部 dll。 Visual Studio 并没有停止说没有为模块加载任何符号。

【问题讨论】:

    标签: c# visual-studio visual-studio-2010 visual-studio-2012 pdb-files


    【解决方案1】:

    始终需要调试具有相同版本的符号文件。当您调试自己的应用程序时,您通常不必关心这一点。

    但是在后台发生了一些事情。 Visual Studio 始终在构建应用程序时将符号文件放在调试文件夹中,并按照Loading the symbols automatic 中的说明加载它们。

    (当您分发应用程序时,您通常不想分发这些符号,因此它们不会被复制到您将构建配置更改为发布的发布目录。)

    手动加载符号

    如果您想手动加载符号,可以使用Modules 对话框加载它们。

    "Debug" -> "Windows" -> "Modules".

    您可以右键单击一行,并有“加载符号”选项,可让您指定要加载的 PDB 文件。

    自动加载符号

    Visual Studio 还会在符号位于 listed in the Specify Symbol (.pdb) and Source Files in the Visual Studio Debugger documentation 的地方之一时自动加载它们:

    • 在 DLL 或可执行文件中指定的位置。

      (默认情况下,如果您在计算机上构建了 DLL 或可执行文件,链接器会将关联的 .pdb 文件的完整路径和文件名放在 DLL 或可执行文件中。调试器首先检查以查看如果符号文件存在于 DLL 或可执行文件中指定的位置。这很有帮助,因为您始终拥有可用于在计算机上编译的代码的符号。)

    • .pdb 文件可能与 DLL 或可执行文件位于同一文件夹中。

    • 任何本地符号缓存文件夹。

    • 指定的任何网络、互联网或本地符号服务器和位置,例如 Microsoft 符号服务器(如果启用)。

    如果您想了解更多关于符号如何与 Visual Studio 一起使用的信息,您可以阅读 this 关于 Understanding symbol files and Visual Studio’s symbol settings 的文章。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-21
      • 1970-01-01
      • 2021-09-25
      • 2012-06-25
      • 1970-01-01
      • 1970-01-01
      • 2021-07-25
      • 1970-01-01
      相关资源
      最近更新 更多