# Hook游戏sendto函数dll和注入程序 **目前实测文明6已经可以实现效果了,不保证其他游戏可以,这是因为目前的代码是针对文明6的反汇编调试结果写的** **对于其他游戏是否可行,需要进行网络抓包和反汇编调试才能知道** **已知MinGW-w64 g++编译的二进制可能在部分电脑不能运行,目前正在寻找解决方法** 仅支持Windows下的x86和x64平台 请确保熟悉基础的Windows命令行操作 ## 目录说明 - bin存放编译后的二进制文件输出目录 - inc存放头文件 - src存放源代码 - hookdll存放dll的代码和Makefile - injector存放注入程序的代码和Makefile - utils存放实用程序代码 - test存放测试用代码 ## 编译方法 首先确保同时安装了x86和x64的*MinGW-w64*工具链,已经有的可以略过 下载地址 注意要下载两个,一个带**i686**前缀,一个带**x86_64**前缀 将它们分别解压到不同目录,然后将二者的bin目录都设置环境变量 当然如果你用msys2也可以,会配置完全没问题 切换工作目录到当前目录,运行`mingw32-make`即可 如果你单独安装了*GNU make*,那么可以直接运行`make` --- 要编译utils下的辅助程序,请到[Lazarus官网](https://www.lazarus-ide.org/)下载并安装最新版的*Lazarus IDE* 然后用Lazarus打开auxtool.lpi工程文件,在菜单栏中依次选择**运行-构建**即可,exe会生成在bin目录下 ## 使用方法 成功编译之后,切换到bin目录,运行injector32.exe或者injector64.exe,具体视游戏而定 例如你要注入文明6,那么请使用`injector64.exe -x=CivilizationVI.exe`或者`injector64.exe -x=CivilizationVI_DX12.exe` 如果游戏以管理员权限运行,injector也要以管理员权限运行