如何通过CLRMD获取WinDBG中显示的异常

如何通过CLRMD获取WinDBG中显示的异常,windbg,crash-dumps,clrmd,Windbg,Crash Dumps,Clrmd,当我通过WinDBG打开崩溃转储(迷你转储)时,它通常指向特定的调用堆栈和异常。同样,当我在VisualStudio中打开它时(它也会自动选择异常发生的正确线程)。在CLRMD中,我可以检查每个线程的堆栈跟踪/异常,但如何知道当时哪个线程处于活动状态/上次发生的异常是什么?可能。ecxr和。exr会有所帮助。我遇到过WinDbg没有自动设置正确上下文的情况。这可以通过这些命令来解决。不幸的是,我不知道如何将此应用于CLRMD.Afaik,您无法在转储中找到问题“当时哪个线程处于活动状态/上次发生

当我通过WinDBG打开崩溃转储(迷你转储)时,它通常指向特定的调用堆栈和异常。同样,当我在VisualStudio中打开它时(它也会自动选择异常发生的正确线程)。在CLRMD中,我可以检查每个线程的堆栈跟踪/异常,但如何知道当时哪个线程处于活动状态/上次发生的异常是什么?

可能
。ecxr
。exr
会有所帮助。我遇到过WinDbg没有自动设置正确上下文的情况。这可以通过这些命令来解决。不幸的是,我不知道如何将此应用于CLRMD.Afaik,您无法在转储中找到问题“当时哪个线程处于活动状态/上次发生的异常是什么”的答案。但您可以找到有关创建转储时哪个线程处于活动状态的信息(在WinDbg中,它是~并且在开始时线程标记为.)。然后,出现了创建转储的时间问题。如果它是在第一次偶然异常时创建的,那么活动线程很可能是引发异常并触发调试器生成转储的线程。不幸的是,我不知道如何在ClrMD中实现这一点。