我試圖通過WinDbg打印CLR對象/類,但失敗了。調試CLR對象時出現錯誤「Symbol clr!XXX not found」 class
首先,我試着運行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.
BTW,我發現,但是沒有辦法,直到現在。
但是有些人可以運行dt
命令successfully for the CLR class\object with old version CLR。
我確定正確加載CLR的PDB。 請幫助檢查您是否有相同的問題,如果不是,請告知如何解決該問題。
提交了錯誤的請求給微軟,並等待他們的審查結果。 https://connect.microsoft.com/VisualStudio/feedback/details/3136349 –