zoukankan      html  css  js  c++  java
  • sosex查看变量的命令!mdt

    !mdt allows you to dump the fields of a given type by type name or to examine the fields of an object or value type instance.  Not only can you examine the fields of an object or value type instance, but you can also examine an entire object graph by specifying the “-r” (recursive) switch.  Want to examine a local variable or argument?  No problem.  Just enter “!mdt <Var Name>”, and voila!  The best way to demonstrate the power of this command is with a few examples.

    0:000> !mdt System.DateTime 003bef0c 
    003bef0c (System.DateTime) 2008/01/02 03:04:05.678 VALTYPE (MT=65cd9e98, ADDR=003bef0c)


    0:000> !mdt theGuid 
    003bef1c (System.Guid) {29b9c9c8-3751-42be-8c7a-8b92ff499588} VALTYPE (MT=65cd6c60, ADDR=003bef1c) 

    0:000> !mdt ConsoleTestApp.TestStruct 
    TestStruct 
       Member1: uint 
       Member2: uint 

    0:000> !mdt ConsoleTestApp.TestStruct 003bef04 
    003bef04 (ConsoleTestApp.TestStruct) VALTYPE (MT=001b3198, ADDR=003bef04) 
       Member1:0x162E (System.UInt32) 
       Member2:0x451434E0 (System.UInt32) 

    0:000> !mdt 6487ce0 
    06487ce0 (System.Runtime.Remoting.Proxies.__TransparentProxy) 
       _rp:06487cb4 (System.Runtime.Remoting.Proxies.RemotingProxy) 
       _stubData:06482a5c (BOXED System.IntPtr) VALTYPE (MT=65cfb114, ADDR=06482a60) 
       _pMT:65cf902c (System.IntPtr) 
       _pInterfaceMT:00000000 (System.IntPtr) 
       _stub:68c71e70 (System.IntPtr) 

    0:000> !mdt 6487ce0 -r 
    06487ce0 (System.Runtime.Remoting.Proxies.__TransparentProxy) 
       _rp:06487cb4 (System.Runtime.Remoting.Proxies.RemotingProxy) 
          _tp:06487ce0 (System.Runtime.Remoting.Proxies.__TransparentProxy) 
             <RECURSIVE> 
          _identity:06487a98 (System.Runtime.Remoting.Identity) 
             _flags:0x4 (System.Int32) 
             _tpOrObject:06487ce0 (System.Runtime.Remoting.Proxies.__TransparentProxy) 
                <RECURSIVE> 
             _ObjURI:06484c88 (System.String: "/49cf1154_ea17_4f51_b666_8f91a1263a00/0um3p4he0mnsfugppw1z7gkd_1.rem") 
             _URL:NULL (System.String) 
             _objRef:06484e10 (System.Runtime.Remoting.ObjRef) 
                uri:06484c88 (System.String: "/49cf1154_ea17_4f51_b666_8f91a1263a00/0um3p4he0mnsfugppw1z7gkd_1.rem") 
                typeInfo:064850f4 (System.Runtime.Remoting.TypeInfo) 
                   serverType:064862d4 (System.String: "System.AppDomain, mscorlib, Version=2.0.0.0, Culture=neutral… 
                   serverHierarchy:NULL (System.Object[]) 
                   interfacesImplemented:064864bc (System.String[], Elements: 2) 
                envoyInfo:NULL (System.Runtime.Remoting.IEnvoyInfo) 
                channelInfo:06486b5c (System.Runtime.Remoting.ChannelInfo) 
                   channelData:06486b68 (System.Object[], Elements: 1) 
                objrefFlags:0x0 (System.Int32) 
                srvIdentity:06484e2c (System.Runtime.InteropServices.GCHandle) VALTYPE (MT=65cfbcb8, ADDR=06484e2c) 
                   m_handle:007e11ec (System.IntPtr) 
                domainID:0x2 (System.Int32) 
             _channelSink:06487c90 (System.Runtime.Remoting.Channels.CrossAppDomainSink) 
                _xadData:06483834 (System.Runtime.Remoting.Channels.CrossAppDomainData) 
                   _ContextID:06483854 (BOXED System.Int32) BOXEDVAL=0x87C330 
                   _DomainID:0x2 (System.Int32) 
                   _processGuid:06483530 (System.String: "88866410_d263_4d8a_b901_8278132285be") 
             _envoyChain:06487ca8 (System.Runtime.Remoting.Messaging.EnvoyTerminatorSink) 
             _dph:NULL (System.Runtime.Remoting.Contexts.DynamicPropertyHolder) 
             _lease:NULL (System.Runtime.Remoting.Lifetime.Lease) 
          _serverObject:NULL (System.MarshalByRefObject) 
          _flags:0x3 (System.Runtime.Remoting.Proxies.RealProxyFlags) 
          _srvIdentity:06487cd0 (System.Runtime.InteropServices.GCHandle) VALTYPE (MT=65cfbcb8, ADDR=06487cd0) 
             m_handle:007e11ec (System.IntPtr) 
          _optFlags:0x7000000 (System.Int32) 
          _domainID:0x2 (System.Int32) 
          _ccm:NULL (System.Runtime.Remoting.Messaging.ConstructorCallMessage) 
          _ctorThread:0x0 (System.Int32) 
       _stubData:06482a5c (BOXED System.IntPtr) VALTYPE (MT=65cfb114, ADDR=06482a60) 
          m_value:ffffffff (System.UIntPtr) 
       _pMT:65cf902c (System.IntPtr) 
       _pInterfaceMT:00000000 (System.IntPtr) 
       _stub:68c71e70 (System.IntPtr)

  • 相关阅读:
    男生晚上做什么兼职好?有什么好兼职推荐吗?
    保护隐私同时实施有效审计监管的区块链系统
    真正能挣钱的分析模型有哪些?这三个你绝对要学会
    《机器学习实战》学习笔记(九):树回归
    那些年删过的库,跑过的路,你从中找到解决方法了吗?
    怎么查看当前的git分支是基于哪个分支创建的?
    怎么查看当前的git分支是基于哪个分支创建的?
    安卓性能优化总结
    安卓性能优化总结
    安卓性能优化总结
  • 原文地址:https://www.cnblogs.com/yuanxiaoping_21cn_com/p/2698147.html
Copyright © 2011-2022 走看看