【问题标题】:Windows did not generate Debug Window when application crashed应用程序崩溃时 Windows 未生成调试窗口
【发布时间】:2011-07-10 12:44:58
【问题描述】:

当我的应用程序崩溃时,Windows XP 没有生成下面给出的窗口

我配置了即时 (JIT) 调试器,如下所示。当其他一些应用程序崩溃时,Windows 会生成上述窗口。
可能是什么问题?
是否有任何机制可以知道应用程序是正常退出还是崩溃?

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug]
"Auto"="0"
"Debugger"="C:\NeST\DebuggingTools\Debugging Tools for Windows (x86)\ntsd.exe -p %ld -e %ld -g -noio -c ".dump /ma /u c:\dumps\jit.dmp; q"
"UserDebuggerHotKey"=dword:00000000

【问题讨论】:

    标签: windows debugging windows-xp registry


    【解决方案1】:

    我不知道为什么这对您不起作用,但您可以使用 adPlus 启动您的应用程序。这样您就不再依赖于某些全局注册表设置,并且可以更好地控制监控。

    【讨论】:

    • 当我附加 adPlus 时,应用程序不会崩溃。所以我为 JIT 调试配置了 NTSD
    • @Maanu,您的应用程序在没有附加调试器时会崩溃,并在有调试器时成功运行?如果是这种情况,您确定调试器可以将转储文件写入您指定的文件夹中吗?
    • Windows 在某些情况下会显示对话框。但在其他一些情况下,它不会显示对话框。当我单击对话框的调试按钮时,它会生成转储文件
    • @Maanu,100% 确定:1. 当没有消息时,你能判断应用程序是否真的崩溃了吗? 2. 您的驱动器上是否有足够的空间存放转储文件?转储大小可能会发生变化,如果驱动器已满,则会导致结果不一致。 BTW,adPlus 使用的是 CDB,和 NTSD 类似,但是它省去了系统 JIT 设置,所以出错的地方少了一个……
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-12
    • 1970-01-01
    • 1970-01-01
    • 2018-07-13
    • 1970-01-01
    • 1970-01-01
    • 2016-03-12
    相关资源
    最近更新 更多