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