|
本帖最后由 sunspot2004 于 2013-1-6 10:34 编辑
貌似 WinActivate("QQ2013") 无法激活啊
因为autoit刚刚学 就是为了要晒qq太阳用的 呵呵
相关文章找了一堆 无解
所以求教 感谢
=代码================分割线============
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <ProgressConstants.au3>
#include <SliderConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <ListBoxConstants.au3>
#include <GuiListView.au3>
#include <File.au3>
#include <Array.au3>
#region ### START Koda GUI section ### Form=
;~ 创建主界面
$Form1 = GUICreate("QQ批量登录工具", 473, 355, 192, 124)
$ListView1 = GUICtrlCreateListView("", 8, 8, 449, 305, _
BitOR($GUI_SS_DEFAULT_LISTVIEW, _
$WS_HSCROLL, $WS_VSCROLL), _
BitOR($WS_EX_CLIENTEDGE, $LVS_EX_GRIDLINES, _
$LVS_EX_CHECKBOXES))
$Button1 = GUICtrlCreateButton("登 录", 96, 320, 81, 25)
$Button2 = GUICtrlCreateButton("使用说明", 257, 320, 81, 25)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
Local $j
;~ For $j = 0 To 9
;~IniWrite(@ScriptDir & "\自动登陆配置信息.ini", $j, "QQ号", "2121")
;~IniWrite(@ScriptDir & "\自动登陆配置信息.ini", $j, "密码", "00")
;~ Next
;~ 书写配置文件,填写入QQ号码与密码
_Main()
Func _Main() ;~ 主函数
_GUICtrlListView_AddColumn($ListView1, "QQ号码", 140)
_GUICtrlListView_AddColumn($ListView1, "密码", 140)
Local $i
Local $QQDate[5][3] ;定义二维数组$QQDate储存QQ帐和密码等信息
Local $QQStart ;定义QQ起始位置
Local $QQStart2 ;定义QQ起始位置
$QQStart = IniRead(@ScriptDir & "\自动登陆配置信息.ini", "运行值", "运行到", "0")
$QQStart2 = $QQStart + 4
For $i = $QQStart To $QQStart2
$QQDate[$i-$QQStart][1] = IniRead(@ScriptDir & "\自动登陆配置信息.ini", $i, "QQ号", "")
$QQDate[$i-$QQStart][2] = IniRead(@ScriptDir & "\自动登陆配置信息.ini", $i, "密码", "")
Next ;读取配置信息
Local $QQStart3
$QQStart3 = $QQStart2+1
If $QQStart3 = 90 Then
$QQStart3 = 0
EndIf
IniDelete (@ScriptDir & "\自动登陆配置信息.ini", "运行值" )
IniWrite(@ScriptDir & "\自动登陆配置信息.ini", "运行值", "运行到",$QQStart3)
If IsArray($QQDate) Then
_GUICtrlListView_BeginUpdate($ListView1)
_GUICtrlListView_DeleteAllItems($ListView1)
For $i = 0 To 4
GUICtrlCreateListViewItem($QQDate[$i][1] & "|" & "******", $ListView1)
Next
_GUICtrlListView_EndUpdate($ListView1)
EndIf ;根据配置文件信息创建ListView列表
For $i = 0 To 4
If Not $QQDate[$i][1] = "" Or Not $QQDate[$i][2] = "" Then
_GUICtrlListView_SetItemChecked($ListView1, $i)
EndIf
Next ;设置QQ号和密码都不为空的项为“选中“状态
While 1 ;开启循环模式
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button1 ;单击登录
For $i = 0 To 9
If _GUICtrlListView_GetItemChecked($ListView1, $i) Then ;如果选中,则运行QQ,并填入相应的QQ号码与密码
Run("D:\Program Files\Tencent\QQ\Bin\QQ.exe")
Sleep(500)
;新增相对坐标点击
$Title = "QQ2013"
;$a = WinGetCaretPos()
MouseClick("left", "510", "278") ;执行鼠标点击
Sleep(500)
WinActivate($Title, "")
SendKeepActive($Title)
$WinPosArray = WinGetPos($Title) ;获取QQ2013的坐标
$Width = $WinPosArray[0] + 150
$Height = $WinPosArray[1] + 169
;新增结束
Sleep(100)
MouseClick("left", $Width, $Height) ;执行鼠标点击
Sleep(100)
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Send("{Del}")
Sleep(100)
Send($QQDate[$i][1])
Sleep(100)
MouseClick("left", $Width, $Height+20) ;执行鼠标点击
Sleep(200)
Send($QQDate[$i][2])
Sleep(100)
Send("{enter}")
Sleep(3000)
WinSetState($Title, "", @SW_HIDE)
Sleep(2000)
EndIf ;登录完成
Next
EndSwitch
WEnd
EndFunc ;==>_Main
=============代码 分割线 =============
整体结构是有个贴子关于2012qq他好像是激活有问题的中的源代码
我仅仅修改了根据相对坐标点击这个
当然现在因为无法激活 我点击了一下 屏幕中间
大家可以搜qq2012 就可以搜到那个贴子了 先感谢那位兄弟 qq271859852 |
|