如何获取详细信息!dumpheap windbg命令

时间:2012-07-30 15:27:18

标签: windbg

我已经执行了windbg命令 !dumpheap -stat获得一个转储。 现在我想获得有关类类型内容的更多信息。 如何查看班级类型的更多详细信息?

0:007> !do 00000000062782d0    
Free Object
Size:        566112(0x8a360) bytes
0:007> !do 000007ff00c88fc8        
<Note: this object has an invalid CLASS field>
Invalid object

这一切都无法获得更多信息。 是否有可能获得IL Code?

1 个答案:

答案 0 :(得分:3)

.Net类由Method Table标识,它位于程序集元数据中。使用!dumpmt转储方法表。例如。:

0:031> !dumpmt -md 71ad219c
EEClass:         716e3d94
Module:          716e1000
Name:            System.EventHandler
mdToken:         020000da
File:            C:\windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll
BaseSize:        0x20
ComponentSize:   0x0
Slots in VTable: 16
Number of IFaces in IFaceMap: 2
MethodDesc Table
   Entry MethodDe    JIT Name
719c99d0 716e6a08 PreJIT System.Object.ToString()
719cf140 71766428 PreJIT System.MulticastDelegate.Equals(System.Object)
719e1440 71766484 PreJIT System.MulticastDelegate.GetHashCode()
719b1500 716e6a44 PreJIT System.Object.Finalize()
...