自己制作QQ挂级小工具
随着QQ新增了等级制度,许多网友都热衷于“挂级”(就是让QQ长时间在线以获得更多在线时间),期待星星变月亮,月亮变太阳。网上也出现了一些挂级工具,其实原理很简单。QQ上线时间只要超过35秒,腾讯就计为上线一分钟。所以只要上线35秒后离线,然后再上线,就比正常计时节约了20秒左右,即二小时可以得到三小时的在线时长,如此往复就达到了加速成的目的。本着DIY的精神我也做了个挂级小工具。
编程思路:点击QQ托盘图标,在弹出的菜单中可以看到有"上线"和"离线"两项菜单,只要在间隔时间内自动点击"上线"和"离线"菜单就可以达到目的。点击需要用到 SendMessage函数。但使用的前提是知道窗口的句柄和参数。通过VC的SPY++工具可以得到窗口的类名“#32770”,在程序中用findwindowex函数来查找它,并返回窗口的句柄。再利用SPY++工具找到入口参数。通过发送消息 给目标窗口句柄即可,
程序设计:新建一个应用程序工程,窗体Form1作为主窗体,caption属性为“挂级”。在窗体上添加一个spinedit控件,并设置其属性: "increment" 属性为"1";"max"属性为"60";"min"属性为"30"。添加一个时钟控件,并将属性INTERVAL的值设置为1000(即1秒),再添加一个Label控件、其caption属性设为“时间间隔”。最后再添加两个按钮控件,设置caption属性分别为“开始”和“结束”。
编写代码:在这里只列出了核心代码
function GetQQWnd: HWND;
var
hCurrentWindow: HWnd;
szclass:array[0..254]of char;
begin
hCurrentWindow := GetWindow(Application.Handle, GW_HWNDFIRST);
while hCurrentWindow <> 0 do
begin
Getclassname(hCurrentwindow,@szclass,255) ;
if Strpas(@szclass)=#32770then
begin
if findwindowex(hCurrentwindow,0,Tencent_QQToolBar,nil)>0 then
begin
Result:=hCurrentWindow;
Exit;
end;
end;
hCurrentWindow := GetWindow(hCurrentWindow, GW_HWNDNEXT);
end;
Result:=0;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
if getqqwnd=0 then exit;
SendMessage(getqqWnd,WM_command,13203,0);
SendMessage(getqqWnd,WM_command, 13200,0);
end;
按F9运行一下程序吧!先设置一下时间间隔,间隔时间可以根据电脑性能来设置。再点击“开始”按钮开始看看效果如何。希望你能把星星早日变成太阳。
本程序在Windows 98/Xp,Delphi6.0下调试通过。源代码下载:http://family.chinaok.com/down/200513/code.rar(吉林 空乐)来源:IT家园
补充:综合编程 , 安全编程 ,