Object 什么';使用Windbg只获取对象属性值的方法是什么?

Object 什么';使用Windbg只获取对象属性值的方法是什么?,object,properties,windbg,dump,pykd,Object,Properties,Windbg,Dump,Pykd,我使用PYKD进行转储调试,因此我使用PYKDdbgCommand()获取对象信息 问题是:需要解析dbgCommand()结果才能使用,如以下示例所示: source code : result = dbgCommand(("dt -c CStringArray m_nSize " + pointer_format) % (ptr)).split(' : ') example : dt -c CStringArray m_nSize 0x03966ce8 example output

我使用PYKD进行转储调试,因此我使用
PYKD
dbgCommand()
获取对象信息

问题是:需要解析
dbgCommand()
结果才能使用,如以下示例所示:

source code : result = dbgCommand(("dt -c CStringArray m_nSize " + pointer_format) % (ptr)).split(' : ')
example     : dt -c CStringArray m_nSize 0x03966ce8
example output : 
  <application>!CStringArray
  +0x008 m_nSize 0n16  
与此同时,我已经使用
dd
命令更进一步,如您所见:

0:000> dd 0x03966ce8+0x008 L1 // for a CStringArray, m_nSize is at memory address +0x008
                              // L1 means: limit the amount of answers to one byte
03966cf0  00000010            // the result only contains one line.

现在我只需要找到一种不再看到内存地址的方法。

为什么不使用pykd中的typedVar类

尝试:

0:000> dd 0x03966ce8+0x008 L1 // for a CStringArray, m_nSize is at memory address +0x008
                              // L1 means: limit the amount of answers to one byte
03966cf0  00000010            // the result only contains one line.
print( typedVar('CStringArray', address).m_nSize )
0:000> dt -c foo m_nsize
Local var @ 0x2dfdb8 Type CStringArray
+0x008 m_nSize 0n5
0:000> .printf "%x\n" , @@c++(foo.m_nSize)
5
0:000>