故障转储文件是否需要崩溃时正在运行的本地文件



>我正在分析一个崩溃转储文件,该文件在加载或保存某个(本地(数据文件时崩溃。调用堆栈显示它在崩溃时已执行加载该文件。

想知道我是否需要将此数据文件与转储文件一起准确分析崩溃?它会以任何方式影响指针,如文件名等吗?

不,你不需要它。您将使用 gdb 分析的内容是应用程序崩溃时使用的内存的快照,以及您的应用程序。因此,只需要拥有核心文件和您的应用程序(二进制 + 必需的库;在最好的情况下,您将需要它们的源代码才能将调试信息与算法相关联(。所有指针、变量和其他都将根据核心转储的时间时刻具有值。

更新:但是,您也可以从调试器以交互方式运行应用,并逐步运行直到崩溃。那么是的,您将需要您的文件。

这取决于故障转储类型和创建故障转储时使用的标志。完整内存转储还具有应用程序在崩溃时拥有的所有内存。MINIDUMP_TYPE标志给你一个可能的印象。对于C++,任何转储通常都有帮助,对于 .NET 来说,最好使用完整内存。

除了

转储之外,您很少需要额外的文件,除了包含有关源文件和行号信息的 PDB 文件。

最新更新