菜菜的方法关闭冰刃和狙剑
http://www.7747.net/Article/200802/24089.html最近看炉子VB写的防杀和关冰刃受挫匪浅.
人家强人没办法,VB都可以做出这么强大的东西...
在郁闷半天后,突然飘过一个想法:
人家能做关冰刃,自己咋就不可以捏?高手有自己的思路,菜鸟也有自己的方法的..
条条大路通罗马的说=0=
以前看过个VB发消息关瑞星保护,主要思路是找到瑞星窗口句柄,在发消息关闭.
所有窗口都有自己的句柄,冰刃也一样.
那么我们就来按照这个思路来做一个关闭冰刃的程序吧!
第一步当然是拿冰某的句柄了
冰刃这个程序大家都知道,标题是随机的,那么说用findwindow函数从标题下手拿句柄的路子肯定是不可能的.
那么类名呢?从类名到句柄的方法也是可以的,IS的类名该不会是随机的了吧!
我拿出了Spy++看了下
让人郁闷的一幕发生了~
事实证明,冰刃不仅标题是随机的,类名也如此= =||
XE的IS啊..又一个希望破灭了||
再次受挫..
难道没别的方法了么= =?
本人顺手打开了冰刃的子窗口看了眼..
从图中可以看到,IS的子窗口的类名是固定的哈!
我又分析了IS的几个别版本发现子窗口类名完全相同~~~~
新的方法如下:
GetForegroundWindow拿到当前窗口句柄
FindWindowEx查找当前窗口的子窗口类名,如果查到子窗口类名符合冰刃的特点,那么这个程序一定是冰刃了哈~
拿到了冰刃的句柄,发个wm_close就可以了,对于之后那个是否关闭的提示框,模拟按键就可以无视掉了~
有了思路就自己动手用VB编了个关冰刃的程序,经过调试后,此方法成功关闭冰刃.
'==================================================================
呵呵,看来窗口句柄下手这个思路挺强大的哈.
这个方法连冰刃都可以关,那么关别的程序就应该更简单了吧~
我吧下一个目标放在了狙剑身上0 0....
还是老方法,先用S某分析狙剑,然后想办法拿到狙剑句柄
(由于本人比较懒,这里我测试的只是0117版本的)
大家可以看到狙剑的窗口类名貌似是固定的--"ClientWindow"
PS..狙剑的标题受版本号影响,所以从标题下手比较麻烦(其实标题下手也可以拿句柄,具体思路不说了先)
类名固定,所以用findwindow函数就可直接拿到句柄料..激动ing.
用过狙剑的人知道,关闭必须从右下角的小图标点右键按退出才可以.
实现这个很简单,关瑞星保护不就是这么个原理么?
接着用S某记录关闭狙剑的消息就可以了
在众多消息中找到wm_command
好了,句柄知道,消息也有,发个消息即可关闭我们的狙剑了呵呵^ ^