基本上,应用程序在 VMWare 映像 (Win764) 中冻结,因此我使用任务管理器创建了应用程序故障转储。它创建了故障转储就好了。然后,我使用 WinDbg 打开故障转储,同时链接到完美运行的符号,因为我现在可以看到所有线程、进程和调用堆栈。当我单击调用堆栈中的一个项目时,它会在 WinDbg 中打开一个窗口,显示源文件中调用堆栈的该部分所在的实际代码行。
现在我的问题是,在以这种方式进行调试时,WinDbg 中显示的信息有多准确/可靠?似乎有时它显示应用程序所处的状态根本没有任何意义......就像它显示了不可能的场景或 100% 从未发生过的场景。例如,我看到它显示一个操作开始并完成,但是当我检查正确写入的日志文件时,显示该操作从未发生过。它记录了它从未发生过,然后它成功地继续前进。还有,手术的结果,就算完成了,也绝对不会发生。很明显可以看出操作是否真的开始并发生了。
崩溃转储是否有可能以任何方式完全错误或显示旧信息?