找回密码
 加入
搜索
查看: 2018|回复: 2

“qq2009多账号自动登陆器的不认窗口”的问题

[复制链接]
发表于 2009-12-11 16:20:29 | 显示全部楼层 |阅读模式
下列代码系由互联网得到,总体上是好滴,但是经常出现一个问题:

头一个账号登陆上时,第二个账号登陆过程中容易把头一个账号的主窗口了当成登陆窗口(尤其是在运行了360保险箱的过程中),因为登陆后窗口的标题也是“QQ2009”,请问如何进一步识别呢。
#Region ;**** 参数创建于 ACNWrapper_GUI ****
#AutoIt3Wrapper_Icon=E:\通用工具\AUTOIT\Aut2Exe\Icons\Fonts6.ico
#AutoIt3Wrapper_Outfile=QQ自动登陆器.exe
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_Res_Comment=QQ自动登陆器
#AutoIt3Wrapper_Res_Description=QQ自动登陆器
#AutoIt3Wrapper_Res_Fileversion=1.1.1.1
#AutoIt3Wrapper_Res_LegalCopyright=TVZML
#EndRegion ;**** 参数创建于 ACNWrapper_GUI ****
$vars = IniReadSectionNames(@ScriptDir & "\QQ2009.INI")
If @error Then
MsgBox(4096, "", "Error occurred, probably no INI file.")
Else
For $s = 1 To $vars[0]
   _load($vars[$s])
Next
EndIf
Func _load($section)
$var = IniReadSection(@ScriptDir & "\QQ2009.INI", $section)
If @error Then
   MsgBox(4096, "", "Error occurred, probably no INI file.")
Else
   For $i = 1 To $var[0][0]
    ;MsgBox(4096, "正在登陆", "QQ号码: " & $section & @CRLF & "密码: " & $var[$i][1])
    Sleep($var[$i][0])
    _login($section, $var[$i][1])
   Next
EndIf
EndFunc   ;==>_load
Func _login($id, $pass)
Run("E:\聊天工具\QQ2009\bin\QQ.exe")
WinWait("QQ2009")
WinWaitActive("QQ2009")
$XY = WinGetPos("QQ2009")
MouseClick("left", $XY[0] + 215, $XY[1] + 123)
Send($id, 1)
MouseClick("left", $XY[0] + 230, $XY[1] + 154)
Send("{BS 18}")
Send($pass, 1)
MouseClick("left", $XY[0] + 75, $XY[1] + 190)
Send("{down 6}")
Send("{enter}")
MouseClick("left", $XY[0] + 230, $XY[1] + 154)
Send("{enter}")
EndFunc   ;==>_login


QQ2009.INI

[381615161]
3000=123456
发表于 2009-12-11 17:43:30 | 显示全部楼层
将登陆成功的QQ都隐藏起来(最小化到托盘),这样后面的就不容易出错!
还有就是可以用内部句柄!
发表于 2009-12-11 19:31:33 | 显示全部楼层
本帖最后由 ajian55 于 2009-12-11 19:33 编辑

现在如果把QQ更新一下,到QQ2009SP5,那么论坛以前的什么登陆器就都没用了,包括楼主的。除非你能像彩虹等等的那样,不是通过QQ的登陆窗口登陆。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-16 14:56 , Processed in 0.075582 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表