下列代码系由互联网得到,总体上是好滴,但是经常出现一个问题:
头一个账号登陆上时,第二个账号登陆过程中容易把头一个账号的主窗口了当成登陆窗口(尤其是在运行了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
|