【问题标题】:Which tool to use to open .pdb (symbol) files?使用哪个工具打开 .pdb(符号)文件?
【发布时间】:2016-09-13 03:36:22
【问题描述】:

我有 .pdb 文件,从 MS 符号服务器下载。我需要获取符号列表(函数、参数、它拥有的任何东西)。 CodeProject 上有一个工具,但它只报告模块。有DbgHelp API,但它只能连接到正在运行的进程。如何离线阅读.pdb文件?

【问题讨论】:

  • PDB(程序数据库)将地址映射到符号。它不包含任何符号、函数、变量等)。你真正想达到什么目标?
  • 我有 .dll. 通过阅读它的 PE 标头,我可以获得导出符号(函数)的列表。但是 PDB 可能包含有关未 exprted 函数(当然还有它们的行号)、它们的参数等信息。我想阅读这些信息
  • 行号是没有意义的,除非你有源代码。如果你这样做了,为什么你需要对二进制文件进行逆向工程?您可以使用Debug Help LibrarySymbol Files 读取某些信息。
  • 这能回答你的问题吗? Reading a .pdb file

标签: windows debugging pdb-files


【解决方案1】:

对于仍在寻找的人来说是个好消息,

您所寻找的信息现已开源!

https://github.com/Microsoft/microsoft-pdb

那里有一些真正有趣的东西。像这样pdbdump.cpp file, 用它的dumpPublics function 或它的main flow controlsGood documentation too

【讨论】:

    【解决方案2】:

    您还可以使用 Visual Studio 的 Dia2Dump 示例程序从 PDB 文件转储人类可读的输出,包括其公共符号。

    请务必将其构建为 32 位应用程序,否则您可能会遇到一些问题。 (见dia2dump: CoCreateInstance failed - HRESULT = 80040154

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-08
      • 1970-01-01
      • 2013-09-19
      • 1970-01-01
      • 2017-10-18
      • 1970-01-01
      相关资源
      最近更新 更多