前题:
SetWindowsHookEx在我作的一个dll里。=======================================================SetWindowsHookEx( 类型, 自己的函数,当前dll , ***指定某程序的线程*** );设置了这个。是否就已经把这个dll注入指定某程序的进程了呢?如果不是。要如何处理呢?
SetWindowsHookEx在我作的一个dll里。=======================================================SetWindowsHookEx( 类型, 自己的函数,当前dll , ***指定某程序的线程*** );设置了这个。是否就已经把这个dll注入指定某程序的进程了呢?如果不是。要如何处理呢?
我记得那种把dll放在注册表的某个地方后,user.dll就会自动加装它的那种方法在console下不能用,SetWindowHooks不知道.
里邊講的很清楚
不过我忘了,呵呵,一般我觉得使用setwindowshookex就足够了,
只要有消息循环的就可以注入,一般说来是没有问题的(没有消息循环的程序很少吧,呵呵),
使用远地线程注入的方法虽然很好,但是太麻烦,而且有操作系统限制,
详见《windows核心编程》
好像程序员杂志上的一篇文章上说有三种方法: (1)注册表 (2)钩子 (3)CreateRemoteProcess
(1)和(3)我都没用过。。
另外3是CreateRemoteThread
进程空间)运行环境(包括在代码中使用隐式API调用、字符串常量、全局/静态变量、异常保
护)的工具。它允许你在任意进程(只要你有足够的权限)运行一段代码甚至一个exe,从而
可以让两个或多个可执行文件在同一个进程空间运行。
在一个进程空间运行一份exe,关键是要解决exe的加载问题,这包括把exe映射到目标进
程空间,解决IAT和重定位表,为exe加载必要的dll。remote run library中实现了多种加载
exe的方法。
*********************************************************************
怎么能在游戏中显示我们程序的界面我试过了,设置游戏的窗口为我们程序的父窗口,还是不行
---------------
那个函数并不能指定目标进程。他们还是有区别的。
要在DirectX下显示窗口
比较特殊
此类函数,窗口很快就会被覆盖掉。如果用DoModal函数,执行此函的进程要等到DoModal
返回后在继续运行,因此就不会有窗口被覆盖掉的问题了。