我发现了一个example,它使用调试器引擎API来获取转储中的PEB。这可以使用DbgHelp实现吗?有使用DbgHelp提取注释和异常信息的现有代码。如果可能的话,我想从PEB那里获取一些信息。
发布于 2016-04-21 00:11:42
您可以使用MiniDumpReadDumpStream函数从转储文件中读取流。只需将转储文件读取到内存中或将其映射到内存中,然后使用此函数。
来访问PEB。从转储文件中读取ThreadListStream。MINIDUMP_THREAD_LIST结构将包含一个MINIDUMP_THREAD结构数组,该数组具有具有该线程的Teb地址的TEB字段。
32位和64位的TEB和PEB的不同之处在于,64位的指针是8字节。
这意味着对于32位工艺,可以在TEB的0x30偏移量处找到PEB的地址。对于64位工艺,可在TEB的0x60偏移量处找到PEB的地址。
当从一个小型转储文件中读取内存时,您将需要使用自己的内存读取器函数。
发布于 2016-03-21 21:12:26
在WinDbg中有一个!peb命令,它适用于转储。另请参阅此处:http://windbg.info/doc/1-common-cmds.html
https://stackoverflow.com/questions/15141706
复制相似问题