【问题标题】:How to interpret exception codes shown in WinDbg?如何解释 WinDbg 中显示的异常代码?
【发布时间】:2015-10-13 16:44:36
【问题描述】:
我只是在调试一个崩溃的 Windows 应用程序。启动应用程序后,使用 WinDbg 附加到它,然后让它崩溃,WinDbg 命令窗口中出现以下内容:
(119c.1794): Unknown exception - code 0000071a (first chance)
我一直在网上搜索,但没有找到任何解释如何解释这些异常代码。
如果有什么不同,那就是在 64 位 Windows 8 上运行的 32 位 .NET 应用程序(通过 WoW64)。
【问题讨论】:
标签:
debugging
exception
windbg
windows-nt
【解决方案1】:
WinDbg 已经知道异常的名称:
(15c0.1370): Break instruction exception - code 80000003 (first chance)
您可以通过.exr -1获得更多详细信息:
0:009> .exr -1
ExceptionAddress: 77d5000c (ntdll!DbgBreakPoint)
ExceptionCode: 80000003 (Break instruction exception)
ExceptionFlags: 00000000
NumberParameters: 1
Parameter[0]: 00000000
您还可以按照@rrrower 的建议显示 NTSTATUS 代码:
0:009> !gle
LastErrorValue: (Win32) 0 (0) - The operation completed successfully.
LastStatusValue: (NTSTATUS) 0 - STATUS_WAIT_0
这些状态码可以用!error 解码。它将考虑 Win32、Winsock、NTSTATUS 和 NetApi 错误:
0:009> !error 0000071a
Error code: (Win32) 0x71a (1818) - The remote procedure call was cancelled.