【发布时间】:2017-11-25 06:01:31
【问题描述】:
我尝试通过 WinDbg 打印 CLR 对象/类,但是失败了。
首先,我尝试运行 x clr!Thread* 来获取一些 CLR 类名,输出如下所示。
00007ffd`68957f18 clr!ThreadStore::s_pOSContext = <no type information>
00007ffd`685b0bf0 clr!ThreadNative::SetApartmentState (<no parameter info>)
00007ffd`685b12c0 clr!ThreadNative::YieldThread (<no parameter info>)
00007ffd`6806be60 clr!Thread::ResetManagedThreadObjectInCoopMode (<no parameter info>)
00007ffd`6895e928 clr!ThreadpoolMgr::LastCPThreadCreation = <no type information>
00007ffd`68627800 clr!ThreadPoolNative::CorUnregisterWait (<no parameter info>)
00007ffd`685b1320 clr!ThreadExceptionState::GetCurrentEHClauseInfo (<no parameter info>)
00007ffd`681285c4 clr!ThreadpoolMgr::ChangeTimerQueueTimer (<no parameter info>)
00007ffd`684c69f0 clr!Thread::BaseWinRTUninitialize (<no parameter info>)
00007ffd`680eea20 clr!ThreadpoolMgr::ShouldGateThreadKeepRunning (<no parameter info>)
00007ffd`684c8ca0 clr!Thread::IsWithinCer (<no parameter info>)
00007ffd`6859a0c0 clr!ThreadpoolMgr::DeleteWait (<no parameter info>)
然后我运行了一些命令,如dt clr!<classname> 或dt clr!<classname> <objectaddress>,但是它们都不起作用,错误是
符号 clr!xxxxx 未找到。
0:000> dt clr!ThreadNative
Symbol clr!ThreadNative not found.
0:000> dt clr!Thread
Symbol clr!Thread not found.
0:000> dt clr!ThreadpoolMgr
Symbol clr!ThreadpoolMgr not found.
顺便说一句,我找到了other persons got the same issue,但是直到现在还没有解决方案。
但是有些人可以运行dt 命令successfully for the CLR class\object with old version CLR。
我确定 CLR 的 PDB 已正确加载。 请帮助检查您是否有相同的问题,如果没有,请告知如何解决该问题。
【问题讨论】:
-
向微软提交了一个bug请求,等待他们的审核结果。 connect.microsoft.com/VisualStudio/feedback/details/3136349