当我通过WinDbg调试我的应用程序时,我遇到了一些麻烦。
我不确定它是否是一种WinDbg的错误。
有时我曾经想知道线程的最后一个错误。
我的意思是TEB的LastErrorValue和LastStatusValue。
我也知道!gle和!error命令属于WinDbg。
但是,在输入!gle或!error命令后,我看不到结果消息。
我猜这与语言环境问题有关。但我不确定。
以下是我的WinDbg上的情况。
0:000> !teb
TEB at 7ffdf000
...
LastErrorValue: 998
LastStatusValue: c0000005
0:000> !gle -all
Last error for thread 0:
LastErrorValue: (Win32) 0x3e6 (998) - .
LastStatusValue: (NTSTATUS) 0xc0000005 - "0x%08lx" "0x%08lx"
0:000> !error c0000005
Error code: (NTSTATUS) 0xc0000005 (3221225477) - "0x%08lx" "0x%08lx"
实际上,我正在使用韩国的Windows XP。所以我想我需要在WinDbg中更改Locale。
0:000> .locale e
Locale: English_United States.1252
0:000> !gle -all
Last error for thread 0:
LastErrorValue: (Win32) 0x3e6 (998) - À߸øµÈ ¸Þ¸ð¸® À§Ä¡¸¦ ¾×¼¼½ºÇÏ·Á°í Çß½À´Ï´Ù.
LastStatusValue: (NTSTATUS) 0xc0000005 - "0x%08lx"
但是你看来它变得更糟。
我不可避免地要通过谷歌找到错误价值的含义。但这让我很烦。
如果我能看到英文错误信息就可以了。
有没有人可以帮我这个?
感谢您提前回复。
答案 0 :(得分:1)
对我来说看起来像个错误...不确定是否有任何关于此事的信息。你可以写自己的版本!gle,但那会很痛苦。我将通过帮助页面底部的链接提供有关!gle命令的反馈:
http://msdn.microsoft.com/en-us/library/ff563177(v=vs.85).aspx
也许他们可以为您提供解决方法。
-Scott