vb HOOK 进程API

我知道进程相关的API有ExitProcess、OpenProcess和TerminateProcess请我我如何下钩子,能让程序拦截下来这个API防止自己被结束?我会用... 我知道进程相关的API有ExitProcess、OpenProcess和TerminateProcess
请我我如何下钩子,能让程序拦截下来这个API防止自己被结束?我会用TerminateProcess结束程序
HJ = TerminateProcess(Phwnd, 0)
比如这里的Phwnd我怎么样获得这个参数,判断是否为自己,然后实施拦截?
展开
 我来答
百度网友4684e1e
2011-07-18 · TA获得超过2309个赞
知道小有建树答主
回答量:1266
采纳率:0%
帮助的人:542万
展开全部
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
MEHWND=FindWindow(VbNullString,me.caption)
这个就是自己窗口的句柄,即Phwnd参数的值 long型
然后在写 OpenProcess这个的时候
先检测窗口的句柄:
但是与上者不同,这个需要的时候IPwindowname 后面不需传递用VBNULLSTRING

然后判断二者的HWND是否为一个。

今天装的WIN7,还没装VB……
你先将就下看看……
追问
我是想让结束进程的API中的参数为0或者拦截下来。装上VB看看吧,。帮我解决了多给你分。

我今天鼓捣一天都没弄出来。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wynick
2011-07-16 · 超过14用户采纳过TA的回答
知道答主
回答量:49
采纳率:0%
帮助的人:0
展开全部
你搜索一下吧,vb的hook非常麻烦,而且不稳定,这个最好用C/C++或MASM,就算你Hook了OpenProcess,调用更底层的NtOpenProcess或者直接sysenter你也防不了,更别说icesword这类专业工具了。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hcqsuizyx
2011-07-16 · TA获得超过467个赞
知道答主
回答量:529
采纳率:0%
帮助的人:367万
展开全部
要想做到是非常麻烦的,因为没有拿个API能保护自己的程序不被结束,如果真的有,那么结束任务的API就没有意义了,除非你做成API注入的方式,这有两点是比较麻烦的:
1、你要防止被谁结束就要注入到谁那,换句话说,就要一个一个的注入
2、注入的过程类似于病毒,容易被系统报毒
代码太长,回复放不下,百度HI我我把代码给你
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式