以下仅供参考,未详细斟酌。
1、首先dll的钩子(即SetWindowsHook)可以实现一个天然的全局注入,当然此方法不可以单独注入某个指定的远程线程或进程。
2、windows via 中的 InjLib 是个现成的并且很好的dll注入,此方法是针对某个指定的远程进程(不是线程)。
3、windows via 中的APIHook 是个极优秀的范例,也是个极好的现成的 api挂接方法。
4、windows via 中的APIHook 中作者使用了类,dll中的初始化和释放提供了极大的便利,不需要“显式”处理,而且作者要挂接的api数量较多。
5、上面提到的APIHook 其实可以用另外一种办法挂接。利用 InjLib 中提到的让远程线程调用 LoadLibrary 即可以达到挂接。类的构造函数析构函数帮我们其余的步骤。