如果查看this Youtube video,您会看到该进程终止时WinDbg会自动执行。

我已按照本教程进行操作,并尝试在系统上执行相同的操作。我先运行windbg -I,然后将HKLM\Software\Microsoft\Windows NT\CurrentVersion\AeDebug\Auto注册表项更改为0。我还有其他步骤吗?

最佳答案

使用-I命令行选项运行WinDbg的64位版本将创建64位和32位AeDebug条目。可以使用Process Monitor轻松证明这一点:



WinDbg的32位版本仅创建32位条目。因此,如果您运行32位版本,则不会处理64位程序。这就是我所期望的。另一个选择是您在没有管理员权限的情况下运行了该程序,并且没有仔细阅读失败消息。

如果希望WinDbg同时处理32位和64位崩溃,请对两个版本运行WinDbg -I。您会发现WinDbg足够聪明,可以处理任何订单:


WinDbg32将覆盖WinDbg64创建的现有条目,然后
WinDbg64不会覆盖WinDbg32之前创建的现有条目


尽管WinDbg64可以调试32位应用程序,但它不能加载32位扩展DLL,因此,通常您希望两个调试器都注册,而不仅仅是64位版本。

关于windbg - 程序崩溃后立即启动WinDbg,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30315813/

10-10 01:43
查看更多