使用 Hook 与使用 GetWindowThreadProcessId 等的区别和特点(100分)

  • 主题发起人 主题发起人 nec
  • 开始时间 开始时间
N

nec

Unregistered / Unconfirmed
GUEST, unregistred user!
目标窗口是其他进程的一个非子窗口。问题如下<br>1)使用 Hook -&gt; unHook<br> &nbsp; 与使用 GetWindowThreadProcessId -&gt; OpenProcess -&gt; VirtualAllocEx -&gt;WriteProcessMemory -&gt; ReadProcessMemory -&gt; VirtualFreeEx -&gt;TerminateProcess的区别?<br>2)使用 Hook -&gt; unHook,其他操作完成,空闲中但未unHook之前目标窗口被关闭将会出现什么问题?<br>3)使用 &nbsp;GetWindowThreadProcessId -&gt; OpenProcess -&gt; VirtualAllocEx -&gt;WriteProcessMemory -&gt; ReadProcessMemory -&gt; VirtualFreeEx -&gt;TerminateProcess。其他操作完成,空闲中但未VirtualFreeEx -&gt;TerminateProcess之前目标窗口被关闭将会出现什么问题?
 
1.虽然不知道你的HOOK用了一些什么函数来实现目标,但我想除了可以有一样的结果之外,其它没什么想同的了.最主要的区别应该是HOOK实际上是进入其它进程操作吧,第二者则是跨进程操作了.不过我想我的回答可能不是你要的答案.因为你应该知道....<br>2.什么问题也不会出现.正常退出.//经N次检验,均可正常退出,是否有例外,本人无法断定,并不负法律责任<br>3.什么问题也不会出现.正常退出.//经N次检验,均可正常退出,是否有例外,本人无法断定,并不负法律责任
 
1.Hook是消息钩子,以拦截window消息达到目的.而后者正如你写的是写入目标内存地址,通过操作内存获取数据.<br>2.问题可能不大.<br>3.可能会有内存泄漏的问题.
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部