如何打开pdb文件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何打开pdb文件?相关的知识,希望对你有一定的参考价值。
PDB文件可以用下面几种软件打开:Adobe可以打开PDB文件。
用
FOXIT
reader挺好的,比较小,运行起来也比Adobe快。
可以使用PalmReader打开。
注意:如果想把PDB文件转换成TXT文件查看,可以使用WavePDB转。
PDB文件阅读器
一.
设计思路
好像PC端的PDB文件查看软件不多,一个PDBingo1.504其英文界面不说,就中文内容也显示不出就很不方便(都屏蔽成...了),鉴于这种情况,并且一些电子图书也只能在模拟器上看,如果碰到不同内码的汉字更是麻烦,鉴于此我利用工作之余写了这个免费程序,方便各位胖友查看PDB文件结果和查看电子图书,希望我的劳动能给各位带来方便。 参考技术A PDB文件怎么打开?大部分的开发人员都比较清楚PDB文件,它可以帮助软件调试。在我们编译工程的过程中,PDB文件会和对应的模块(exe或dll)一起生成。
PDB文件是在我们编译工程的时候产生的,它是和对应的模块(exe或dll)一起生成出来的。我们一般可能不会意识到PDB文件的重要性,因为如果只是我们本地进行开发,我们总是能够进行调适。这里我要引入两个概念:Private
Build和Public
Build。Private
Build指的是在开发机器上的编译,Public
Build指的是在负责编译的机器上的编译。
如何在生成类库项目时不生成pdb文件?
打开类库项目属性页面→切换到生成选项卡→点击高级按钮→将调试信息一项设置为none
如何查看二进制文件和PDB的GUID?
使用VS自带的DUMPBIN工具可以查看二进制文件所期望的PDB的GUID。 参考技术B Adobe
Reader..傻B这都不知道。。。或者 同步到ppc或者palm就打开了。哎。。你下PPC不可么。。弄个JJ啊!弄PDB。。。哎!没前途。。好像没专门软件能打开哦。。哈哈!最好能转换下文件格式吧。。。BBBB人!你在弄JB啊#24 参考技术C 在我们目前使用的掌上电脑中,Palm操作系统由于其功能强大、应用软件多等特点,占有很大的比例。PDB文件是Palm OS操作系统上数据文件类型。一般我们在使用Palm系统的电子书时都会遇到这种文件,pdb文件格式是PDA的通用格式。
如果在pc端使用,需要找特定的软件。
PDB阅读器 V1.03 参考技术D 第一位估计是看错了吧,arobatreader能够打开的是pdf文件,pdb文件是palm上的文件格式,不过现在PDA上很多阅读软件也已经支持了,具体可以到www.pdafans.com上了解
读取 .pdb 文件
【中文标题】读取 .pdb 文件【英文标题】:Reading a .pdb file 【发布时间】:2011-01-03 15:38:01 【问题描述】:我有很多 .pdb 格式的文件,其中一些已下载,但直到现在我无法使用或读取里面的内容,所以我正在寻找如何从 MS 读取和查看 .pdb 文件格式Windows XP。
有谁知道如何打开它?
【问题讨论】:
【参考方案1】:如果您指的是调试器使用的“程序数据库”中的 PDB:
PDB 文件包含有关用于帮助调试的文件(例如 EXE 或 DLL)的数据。有一些公共接口允许您从文件中提取数据。在此处查看示例:
http://blogs.msdn.com/jmstall/archive/2005/08/25/pdb2xml.aspx http://www.codeproject.com/KB/bugs/PdbParser.aspx如果您指的是 Palm Pilot 数据库中的 PDB,那么我对此一无所知,但文件格式可在此处获得:
http://www.hotpaw.com/rhn/palm/pdb.txt【讨论】:
【参考方案2】:Microsoft 发布了他们的 PDB 格式的源代码,因此其他编译器开发人员(例如 LLVM 团队)可以更轻松地实现 PDB 格式。
https://github.com/Microsoft/microsoft-pdb/
要实际转储文件的输出,只需使用以下命令:
https://github.com/Microsoft/microsoft-pdb/blob/master/cvdump/cvdump.exe
cvdump Whatever.pdb
【讨论】:
谢谢!有用的应用程序。 将无法运行:--------------------------- 不支持的 16 位应用程序 ------ --------------------- 由于不兼容,程序或功能“\??\C:\Users\ehfsbxw\Downloads_Opera\cvdump.exe”无法启动或运行使用 64 位版本的 Windows。请联系软件供应商询问是否有 64 位 Windows 兼容版本可用。 - - - - - - - - - - - - - - 好的 - - - - - - - - - - - ----- 没错,@SashaBond,这一切都不完整......而且他们似乎不再致力于它了。所以唯一的选择就是抓住那里的东西并尝试尽可能多地理解它。 在 Windows 10 x64 上为我工作。【参考方案3】:您可以使用 Windows SDK 中的DBH tool。
&'C:\Program Files\Debugging Tools for Windows (x64)\dbh.exe' -v MySymbol.pdb dump
【讨论】:
【参考方案4】:现在,我强烈推荐 LLVM 的 PDB 解析器,llvm-pdbutil。
它是一个出色且功能丰富的 PDB 转储程序,非常适合补充 Microsoft 的 cvdump。 有关详细信息和文档,请参阅:
LLVM on Windows now supports PDB Debug Info (LLVM Project Blog) llvm-pdbutil - PDB File forensics and diagnostics (LLVM Homepage)一些有用的入门命令:
llvm-pdbutil dump -all your.pdb
llvm-pdbutil bytes -syms your.pdb
llvm-pdbutil -help
获取 llvm-pdbutil:
根据最新的官方版本 LLVM 7.0.0,llvm-pdbutil.exe
不随 LLVM 二进制文件一起分发,因此必须从源代码构建。
但是,如果您可以使用非官方的 Windows 64 位二进制文件,我的自制 llvm-pdbutil 构建版本可在此处获得(注意需要 Visual C++ 2015 Redistributable):
https://github.com/shaharv/llvm-pdbutil-builds/releases
构建 llvm-pdbutil:
要在 Windows 上从源代码构建 llvm-pdbutil,您必须获取并设置 LLVM 构建。 按照https://llvm.org/docs/GettingStarted.html 上的说明进行操作。
不过,对于 PDB 支持,还有一些必要的补充。总结一下(对于 VS 2017):
克隆 LLVM 存储库:git clone https://github.com/llvm/llvm-project.git
cd llvm-project
mkdir build && cd build
如果不是从 Visual Studio 控制台运行:set VSINSTALLDIR=c:\Program Files (x86)\Microsoft Visual Studio\2017\Community\
。
cmake -G "Visual Studio 15 2017" -A x64 -Thost=x64 -DLLVM_ENABLE_DIA_SDK=ON ../llvm
在 Visual Studio 中,构建 Tools/llvm-pdbutil
项目。
【讨论】:
感谢您发布此内容,尤其是。编译后的可执行文件【参考方案5】:PDB 查看器 (GUI)
DotPeekPortable PDB
工具
SourceLink:sourcelink print-urls Foo.pdb
程序化访问
Microsoft.DiaSymReader.PortablePdb经典(非便携式)PDB
工具-
llvm-pdbutil:
llvm-pdbutil dump -all Foo.pdb
cvdump : cvdump Foo.pdb
DBH: dbh.exe -v Foo.pdb dump
PDBStr: pdbstr.exe -r -p:Foo.pdb -s:StreamName
pdbparse: pip3 install pdbparse; pdb_dump.py Foo.pdb
【讨论】:
为了澄清,dotPeek 可以直接通过工具打开 pdb 文件 |显示 PDB 内容以上是关于如何打开pdb文件?的主要内容,如果未能解决你的问题,请参考以下文章