放置钩子¶
我遇到的下一个问题是钩子是针对 Adobe AIR.dll 模块内的代码,这不是游戏的主模块。由于代码的位置,我需要以不同的方式找到钩子的基址。此外,由于我需要这些钩子跨几个不同版本的 Adobe AIR 工作,我还必须为每个版本找到正确的地址。
我没有试图拿到所有不同版本的 Adobe AIR,而是从 airlog 的做法中又学了一招,决定编写一个小的内存扫描器以编程方式定位地址。在编写内存扫描器之前,我需要 Adobe AIR.dll 的基址和大小,以便把内存搜索限制在该区域内。
我用 Module32First() 和 Module32Next() 找到这些值,如下所示: