如何用VB实现拦截WINDOWS消息,在任何可执行程序运行之前就报警?

如何用VB实现拦截WINDOWS消息,在任何可执行程序运行之前就报警???指出要运行的文件名称,路径等。然后再可控制是否可允许其运行。相当于做到病毒监测软件的功能。在程序... 如何用VB实现拦截WINDOWS消息,在任何可执行程序运行之前就报警???
指出要运行的文件名称,路径等。然后再可控制是否可允许其运行。
相当于做到 病毒监测软件的功能。在程序运行之前就知道。
展开
 我来答
匿名用户
2013-11-22
展开全部
Windows消息的方法没用过……

3个想法:
1. Timer定时枚举系统进程,发现新的进行处理;
2. 订阅WMI事件通知,得到通知后进行处理;
3. 修改注册表HKEY_CLASSES_ROOT\exefile\shell\open\command下的默认键,改成"你的程序 %1",Exe运行时就会先执行你的程序,然后判断;

前两种方法都是马后炮,程序运行了才得到通知,即使你停止它,可能它已经进行过破坏……
第三种方法好些,但需要费些心思考虑应用程序参数的问题,要不然会出大问题,因为像Winlogon之类的程序都要经过你的判断,一旦失误就是Crash……

至于杀毒软件的方法,可能是Hook吧……但像赛门铁克这样的大公司一般都是有MS的源代码支持,直接从内核下手……
tianlidon
2016-01-01 · TA获得超过1219个赞
知道小有建树答主
回答量:676
采纳率:85%
帮助的人:103万
展开全部
实现进程拦截的话要用到hook技术了,ring3下面可以hook CreateProcess函数实现进程创建的监控。ring0下面的话,选择性比较多,一般采用hook NtCreateProcess或NtCreateSection函数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-11-22
展开全部
使用杀毒软件撒 很多杀毒软件都有这个功能
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式