本人的系统环境是win7 X64。安装的是Visual Studio 2008版本。
首先从 https://www.microsoft.com/en-us/download/details.aspx?id=52586 下载 Detours库。下载后解压到某个目录,比如 E:\测试代码\Hook\Express。
运行VS2008的命令行编译环境。打开如下。
运行cd命令进入到 E:\测试代码\Hook\Express\src 目录下。执行nmake命令,发现编译会出现如下错误:
在disasm.cpp文件中,增加如下一行 #define DETOURS_X86_OFFLINE_LIBRARY:
去掉 Makefile 文件的 "只读"属性,修改内容如下:
修改为:
重新执行 nmake 命令,在 E:\测试代码\Hook\Express\lib.X86 下成功生成 detours.lib 库文件。
如果需要测试该lib库,进入 E:\测试代码\Hook\Express\samples 目录,执行nmake命令,在 E:\测试代码\Hook\Express\bin.X86 目录下即可生成测试的exe。通过这些例子,慢慢学习如何进行使用该库进行相关的HOOK。