在64位版本的Windows 7/8/2012中,ETW内核跟踪器为系统调用输入事件提供内存地址。我想将这些地址映射到有意义的地址,例如生活在该地址的函数的名称:例如AcceptConnectPort。
我知道我可以在内核调试器会话中使用ln
(列出最近符号)来查找特定地址的符号。我想要的是一种方法以编程方式。是否有一个库可以用来查找给定内存地址的符号?
更好的是,是否有针对不同Windows版本的内存偏移的权威参考。我找到this table,但这些数字似乎与我观察到的任何内存地址都不对应。
答案 0 :(得分:1)
过去,我曾参与过需要这样做的项目。我们使用安德鲁在评论中提到的DbgHelp API来下载相关的.PDB
文件,并查看我们需要的偏移量。
我已经离开了,所以我无法查看该项目的源代码,但this page是一个很好的起点。