Advanced Debugging
About AdvDbg Consult Train Services Products Tools Community Contact  
欢迎光临 高端调试 登录 | 注册 | FAQ
 
  ACPI调试
Linux内核调试
Windows内核调试
 
  调试战役
调试原理
新工具观察
 
  Linux
Windows Vista
Windows
 
  Linux驱动
WDF
WDM
 
  PCI Express
PCI/PCI-X
USB
无线通信协议
 
  64位CPU
ARM
IA-32
  CPU Info Center
 
  ACPI标准
系统认证
Desktop
服务器
 
  Embedded Linux
嵌入式开发工具
VxWorks
WinCE
嵌入式Windows
 
  格蠹调试套件(GDK)
  格蠹学院
  小朱书店
  老雷的微博
  《软件调试》
  《格蠹汇编》
  《软件调试(第二版)》
沪ICP备11027180号-1

Windows内核调试

帖子发起人: merry   发起时间: 2009-05-12 23:13 下午   回复: 3

Print Search
帖子排序:    
   2009-05-12, 23:13 下午
merryzhao 离线,最后访问时间: 2017/2/21 12:41:06 merry

发帖数前25位
注册: 2008-09-26
发 贴: 61
如何判断函数HvpGetCellMapped返回值的'具体'类型?
Reply Quote

调用函数HvpGetCellMapped得到一个返回值c7018c0c,但是函数HvpGetCellMapped的返回类型是union(_CELL_DATA),如下:

typedef struct _CELL_DATA {
    union _u {
        CM_KEY_NODE      KeyNode;
        CM_KEY_VALUE     KeyValue;
        CM_KEY_SECURITY  KeySecurity;    
        CM_KEY_INDEX     KeyIndex;       
        CM_BIG_DATA      ValueData;      
        HCELL_INDEX      KeyList[1];     
        WCHAR            KeyString[1];   
    } u;
} CELL_DATA, *PCELL_DATA;

Q:如何判断返回值c7018c0c是CM_KEY_NODE,还是CM_KEY_VALUE等其它类型?
谢谢!

 


IP 地址: 已记录   报告
   2009-05-13, 00:38 上午
zhukun28 离线,最后访问时间: 2017/2/15 4:10:25 benlong

发帖数前100位
注册: 2008-10-01
发 贴: 11
Re: 如何判断函数HvpGetCellMapped返回值的'具体'类型?
Reply Quote
这个函数返回的只是Cell的地址
IP 地址: 已记录   报告
   2009-05-13, 10:39 上午
merryzhao 离线,最后访问时间: 2017/2/21 12:41:06 merry

发帖数前25位
注册: 2008-09-26
发 贴: 61
Re: 如何判断函数HvpGetCellMapped返回值的'具体'类型?
Reply Quote
确实是一个地址值,但是我希望由这个地址(比如:c7018c0c )确定是union中那种类型,
例如:如果是CM_KEY_NODE,则我可以用如下命令查看:

kd> dt nt!_CM_KEY_NODE c7018c0c

所以想确定函数HvpGetCellMapped返回值的'具体'类型。
谢谢!
IP 地址: 已记录   报告
   2009-05-13, 13:43 下午
zhukun28 离线,最后访问时间: 2017/2/15 4:10:25 benlong

发帖数前100位
注册: 2008-10-01
发 贴: 11
Re: 如何判断函数HvpGetCellMapped返回值的'具体'类型?
Reply Quote
对于KeyNode、KeyValue和KeySecurity这些结构地址的前两个字节就是其特征签名。比如KeyNode(kn或kl),KeyValue(kv),KeySecurity(ks),这些结构应该可以通过特征签名来判断。
IP 地址: 已记录   报告
高端调试 » 软件调试 » Windows内核调试 » Re: 如何判断函数HvpGetCellMapped返回值的'具体'类型?

 
Legal Notice Privacy Statement Corporate Governance Corporate Governance
(C)2004-2020 ADVDBG.ORG All Rights Reserved.