我正在调查错误代码。应用程序验证程序显示堆在以下调用后已损坏:
AA!Class::Function+dbaf
我有 map 文件。请帮助我如何使用上述信息和 map 文件中的信息找到行号。
首选加载地址是00400000
0002:00000dc4 __imp_?Class@Function@@QAEXV?$vector@Uty_point@@V?$allocator@Uty_point@@@std@@@std@@0PAV23@@Z 0049bdc4
注意:我有匿名的类和函数名。
最佳答案
你只有 map 文件吗?没有PDB?如果你有完整的符号,那么将映射和 .pdbs(和 .exe)与 WinDBG(你在 Windows 上吗?)一起使用。 我想你确实看到了你是如何被赋予函数名称的。
如果不是...dbaf 就是您的答案。这等同于什么?偏移量应该是错误指令的位置。 当然,您需要计算出每条指令(汇编指令)的数量。
关于c++ - 使用 map 文件查找崩溃位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7007874/