Detour安装及简单使用实例

      Detours 是微软开发的一个函数库,可用于捕获系统API。在用其进行程序开发之前,得做一些准备工作:

可以到 http://research.microsoft.com/en-us/downloads/d36340fb-4d3c-4ddd-bf5b-1db25d03713d/default.aspx 下载最新的3.0版本。

现在64bit的支持还是要收费的,免费的可以支持32bit的。

     下载完毕之后是一个msi文件,需要安装一路next即可。安装完成后需要编译才能生成Detours库。注意安装完成之后会有一个源代码文件,在我

的机器上目录是:         A:\Program Files (x86)\Microsoft Research\Detours Express 3.0

      把这个目录拷贝出来,到一个有写权限的盘符下面。 然后打开一个命令行cmd程序,切换到vs,或者vc安装的目录下面:

  A:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin

然后执行设置环境变量的脚本 vcvars32.bat,执行完毕之后可以正常使用vs2010 的工具比如nmake等。

   还是这个cmd窗口不退出,切换到 Detours Express 3.0 根目录下,执行nmake即可生成 detours.lib 文件了。



关于detours的使用可以参考下面:

http://blog.csdn.net/zhsp1029/article/details/4195139



如果一个网络程序 

DetourAttach(&(PVOID&)pSend, MySend);把系统原来的send函数修改起始的几个字节指向我们自己的 MySend 函数,然后很多情况下,

MySend 函数里面做完hook处理之后还需要调用系统原来的send函数: return pSend(xx,xx,xx);

这样岂不是递归调用了?



 

 


你可能感兴趣的:(Detour安装及简单使用实例)