在Windows平台上,既然有pdb文件,为什么我们还需要map文件呢?

4
如标题所述,我认为pdb文件是map文件的超集。我提出这个问题的原因是因为我现在负责维护一个旧系统,该系统将同时生成pdb和map文件。我想知道如果pdb文件可用,那么是否不需要map文件!
谢谢
1个回答

9

我也曾经想过这个问题,并决定看看约翰·罗宾斯在他的书 "Debugging Applications" 中是如何说的。他说,地图文件是 "程序全局符号、源代码和行号信息的唯一文本表示形式",可以在没有任何支持程序的情况下阅读。他接着说,微软定期更改符号表格格式,如果你的客户运行一个非常旧版本的程序,可能很难找到一个能解释那个非常老的程序的 PDB 文件中的符号表的旧版本符号引擎。但由于地图文件只是一个文本文件,你可以轻松地通过在记事本中打开地图文件来将崩溃地址映射到符号!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接