在Delphi中新建一個Project1,在Form1上添加一個Timer,設置Interval為100ms,然後編寫下面的代碼即可:
procedure TForm1.Timer1Timer(Sender: TObject);
var
handle,hchild1,hchild2:THandle;
point:TPoint;
temp:array[0..255] of char;
begin
://取得當前鼠標的位置
GetCursorPos(point);
//取得當前鼠標所在窗體的句柄
handle:=WindowFromPoint(point);
GetClassName(handle,temp,256);
//#32770是對話框的類名,QQ窗體的類名就是#32770
if temp='#32770' then
begin
//為了確保是QQ登陸窗體,再檢查有沒有“登陸”和“注冊向導”兩個按扭
hchild1:=FindWindowEx(handle,0,'Button','登錄');
hchild2:=FindWindowEx(handle,0,'Button','注冊向導');
if (hchild1<>0) and (hchild2<>0) then
SendMessage(handle,WM_CLOSE,0,0);
end;
end;
呵呵! 很簡單吧!要注意的是,QQ窗體的“QQ用戶登陸”這個標題是畫上去的,不能簡單的用FindWindow(窗體句柄,“QQ用戶登陸”)來判斷。