我们能用dt address type 来按类型来输出内存的内容。
但是,有时候symbols里面根本就没有对应的type,比如说,有一个网络消息结构,在C/C++源文件里面,没有申明一个对应的结构,源代码里面都直接使用宏去访问消息中的特定的域。这样的话,为了在Windbg格式中格式化输出这样一个结构,只有自己写扩展命令去做。
问题在于,这样的无类型申明的结构很多,为每一个都写一个扩展明显不值得,而且不得不重新编译扩展dll。
是否已经有一个通用的扩展dll和对应的用于描述结构的"脚本文件",扩展dll每次解析这样的一个"脚本文件"来格式化输出内存内容。
这样的话,每次有个新的需求,只需要写一个新的"脚本文件"来描述这个类型就可以了。
|