"无法要求ThreadStore" - WinDbg的调试实时进程 [英] "Failed to request ThreadStore" - WinDbg debugging live process

查看:289
本文介绍了"无法要求ThreadStore" - WinDbg的调试实时进程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我调试了presentationHost.exe直播过程中(而不是转储)。它曾经工作正常,但突然前几天我收到上面的错误消息。 !线程,!PE,几乎所有的SOS命令不起作用。

I am debugging the live process (not dump) of PresentationHost.exe. It used to works fine, but suddenly few days ago I get the above error message. !Threads, !pe, virtually all SOS command doesn't work.

我所记得的是,我安装了Visual Studio 2010和.NET Framework 4.0之前,我得到这个错误。这是否与?

All I remember is that I installed Visual Studio 2010 and .NET framework 4.0 before I'm getting that error. Is it related?

更新:

我自己不能重现我是有这个问题。也许我调试32位进程的64位调试器,或.NET 4的过程与.NET 2.0 SOS,反之亦然,或两者位数和DLL版本的组合。

I myself can not reproduce the problem I was having. Probably I was debugging 32 bit process with 64 bit debugger, or .NET 4 process with .NET 2.0 SOS, or vice versa, or combination of both bitness and DLL version.

抱歉,这个问题可能不是有效的。

Apologize that this question may not valid.

推荐答案

当你想发出命令?
当试图发​​出SOS命令之前,CLR是满载此错误是相当普遍的。
你可以尝试打破之后的CLR已经完成了它的初始化程序。为了打破在这一点上,你可以把以下方式断点:<!code> BP CLR EEStartup顾。这将导致调试器打破了 EEStartup 功能,并继续执行,直到函数完成。
当该断点调试器符,你应该能够发出您的SOS命令。

When are you trying to issue the command?
This error is quite common when attempting to issue SOS commands before the CLR was fully loaded.
You could attempt to break right after the CLR had finished its initialization procedure. In order to break at that point, you could place a breakpoint in the following manner: bp clr!EEStartup "gu". This will cause the debugger to break on the EEStartup function, and continue execution until the function completes.
When the debugger breaks on that breakpoint, you should be able to issue your SOS commands.

这篇关于&QUOT;无法要求ThreadStore&QUOT; - WinDbg的调试实时进程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆