首页 新闻 会员 周边

hook 任务管理器问题?快来人啊

0
悬赏园豆:50 [已解决问题] 解决于 2013-09-23 16:22

最近没事,研究一下hook api,想做一个进程保护功能。

已经实现对OpenProcess的Hook,可以防止进程被一般进程结束,当然也可以防止进程被任务管理器通过结束进程来结束。

但问题是我还想实现另外两个功能:

1.如何防止通过窗体结束我的进程? 任务管理器里的“应用程序”标签下的“结束任务”(注意不是结束进程哦)就可以轻松的结束任务,然后进程也就挂了。我想知道它是通过哪个主要的API最终结束我的进程的。

我想要让任务管理器找不到我的窗体,试过Hook EnumChildWindows,FindWindowW,但好像不行啊。Hook了SendMessage WM_Close等几个也不行啊。

2.我想要隐藏进程,我要Hook哪个API呀?

空明流光的主页 空明流光 | 初学一级 | 园豆:106
提问于:2013-09-19 10:32
< >
分享
最佳答案
0

发出了这么长时间,看来这个问题无法彻底解决了。

我自己发现了一种方法,只是权宜之计。

那就是Hook住IsWindowVisible,然后在调用时判断这个hwnd是否属于自己的进程,实现隐藏自己的窗体。如果是返回false,否则返回调用原函数。

隐藏进程国外的介绍文档还算比较多,我自己再研究一下吧。

空明流光 | 初学一级 |园豆:106 | 2013-09-23 16:21
其他回答(2)
0

看下如下博客:http://www.cnblogs.com/andy1987/p/3311111.html ,也许对你有帮助,

收获园豆:40
幻天芒 | 园豆:37175 (高人七级) | 2013-09-20 12:13

这个帖子我看了,对于我的问题好像并没有帮助,还是无法阻止任务管理器通过“结束任务”将有窗体的进程结束。

支持(0) 反对(0) 空明流光 | 园豆:106 (初学一级) | 2013-09-23 15:05
0

easyhook,最近再用,很适合用.NET的人们

收获园豆:10
迅捷网络[来送福利] | 园豆:576 (小虾三级) | 2013-09-20 17:38

我的Hook需要稳定,我选用了微软的detours

支持(0) 反对(0) 空明流光 | 园豆:106 (初学一级) | 2013-09-23 16:17

64位呢?

支持(0) 反对(0) 迅捷网络[来送福利] | 园豆:576 (小虾三级) | 2013-09-23 16:19

@秦时明月-Moon.Net塑造Orm经典: 64位花点钱呗,貌似这个64位要收费的。暂时还没这个需求。

支持(0) 反对(0) 空明流光 | 园豆:106 (初学一级) | 2013-09-23 16:25

@沧海一杰: 告诉你easyhook真的很稳定,很好用

支持(0) 反对(0) 迅捷网络[来送福利] | 园豆:576 (小虾三级) | 2013-09-23 16:25

@秦时明月-Moon.Net塑造Orm经典: 好吧,你这么说,我可以看看,但微软的操作系统,论稳定性,我觉得微软应该是首选吧。以前写一个杀毒软件,win32层的hook api,电脑运行一天以上,一般都会蓝屏一次,但用微软的就没有这种情况。

支持(0) 反对(0) 空明流光 | 园豆:106 (初学一级) | 2013-09-23 16:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册