由.net 4.0的gflags.exe创建的分析崩溃转储,但没有足够的信息



一个用c# 4.0编写的windows服务,设置gflags.exe(Global Flags)在进程崩溃时保存转储文件。

但是当我在windbg中打开crash dump时,我得到了0:00>。我不擅长winddbg,我记得Tess的博客说当打开崩溃转储时,你应该看到异常发生的线程id,但我看到的是0:00>…而!p没有有用的结果。

使用!dumpheap -stat,我只能看到几个对象,那么我如何分析这个转储?非常感谢您的帮助。

如果您看到很少有对象使用!dumpheap -stat,那么很可能这个转储生成得太晚,或者在错误的时间生成。

您可以尝试使用Debug Diag或ADPlus来重新捕获转储(当然,在此之前您需要重置GFlags中的更改)。

http://blogs.msdn.com/b/lexli/archive/2009/08/23/when-the-application-program-crashes-on-windows.aspx

~*e !pe输出您感兴趣的异常吗?长的路是:

!threads
~#s, where # is the number of the thread which has an exception
!pe

最新更新