【问题标题】:A matching symbol file was not found (Cannot find/open pdb file)找不到匹配的符号文件(无法找到/打开 pdb 文件)
【发布时间】:2016-09-20 16:47:55
【问题描述】:

加载此模块时未启用调试点。所以我想到了从“Debug/obj”文件夹手动加载它的调试符号.pdb文件。

在这种情况下,尽管该文件夹包含当前构建文件,但在此文件夹中找不到“匹配符号”文件。

“符号加载信息”也包含这么多目录路径。

Cannot find or open the PDB file.

PDB does not match 

截图:

【问题讨论】:

  • 它发现 PDB 很好,只是与 Src_2\WES\WES\Debug\ 目录中的 DLL 不匹配。只需查看文件上的时间戳,DLL 比 PDB 更旧的可能性很高。不要手动复制 DLL。对于如此不同的目录,看起来也存在源代码控制问题。
  • 谢谢汉斯!让我看看你的建议。
  • 我尝试了你的解决方案它没有成功:(。看起来我仍然缺少一些东西。

标签: visual-studio-2013 debug-symbols pdb-files


【解决方案1】:

通过以下步骤解决此问题-

1) 如果 VISUAL STUDIO 正在运行,则关闭所有实例并打开单个 Visual Studio 实例

2) 关闭解决方案(除了你的项目)如果它已经打开然后重新打开

3) 清理整个项目并重建它。

4) 如果您遇到任何错误,例如“___.dll not found”,也构建项目

5) 现在你可以开始运行你的项目了

【讨论】:

    【解决方案2】:

    在我对此一头雾水之后,对我来说,当我将项目配置为以这种方式将二进制文件与对象分开时,它发生了:
    对于Output directory

    $(SolutionDir)build\bin\$(PlatformTarget)-$(Configuration)\
    

    对于Intermediate Directory

    $(SolutionDir)build\obj\$(PlatformTarget)-$(Configuration)\$(ProjectName)\
    

    即使我仍然有生成的.pdb 我的 exe 或尝试手动加载它,但它不起作用。 所以我再次进入配置Properties -> Linker -> Debugging 并且属性Generate Program Database File 我从$(OutDir)$(TargetName).pdb 更改为$(IntDir)$(TargetName).pdb 所以它会将所需的数据库文件放入对象(Intermediate Directory)所在的位置,而不是.exe(Output directory)。希望这对某人有所帮助:)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-20
      • 2012-12-30
      • 2015-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-27
      相关资源
      最近更新 更多