cl19343333 发表于 2010-9-10 17:29:40

怎么判断QQ已经登陆过了

如下,是自己弄得QQ2010自动登录代码:Run("E:\QQ\Bin\QQ.exe")
WinWaitActive("QQ2010")
ControlSend("QQ2010", "", "", "1153646466")
ControlFocus("QQ2010", "", "")
Sleep(2000)
Send("123456")
ControlCommand("QQ用户登录","","Button16","Check")
Send("{DOWN 6}")
send("{ENTER}")怎么在自动登录QQ之前判断这个QQ号是否登录了,如果登录过了则提示已经登录并退出,如果没有登录就继续登录。大家帮帮忙,刚刚学AU3,不懂哈。

xlcwxl 发表于 2010-9-10 22:37:56

如果QQ已经登陆了再次登陆的时候会提示QQ已经登陆,你可以获取是否弹出该窗口来判断

19377708 发表于 2010-9-10 23:09:25

本帖最后由 19377708 于 2010-9-10 23:48 编辑

$QQ = 1153646466
Run("E:\QQ\Bin\QQ.exe")
    WinWaitActive("QQ2010")
    ControlSend("QQ2010", "", "", $QQ)
    Send("123456")
    send("{ENTER}")
    sleep(100)
$pdi = WinGetProcess("提示")
If WinExists("提示") Then
      ProcessClose($pdi)
MsgBox(0,"QQ:" & $QQ & "已登录","QQ:" &$QQ & "已登录")
EndIf

xyold1 发表于 2010-9-10 23:44:21

登陆qq后,拖盘里会有qq的ico图标,鼠标放在图标上会有tooltip提示,每个QQ号的提示也不相同,这个可以作为检测QQ是否登陆的方法,
大家都知道拖盘也是一个窗口,可以很方便地得到句柄,再用_GUIToolTip_GetText获取ToolTip的文本,再对比一下是否有指定的QQ号码存在即可。

cl19343333 发表于 2010-9-11 07:42:27

谢谢提点哦,回去试试先。

xsjtxy 发表于 2010-9-11 14:18:49


$value = InputBox("检测QQ是否已经登陆", "不支持QQ2008及更老版本"&@CR&"请输入QQ号码", "")
if $value = "" then exit
$objWMIService = ObjGet("winmgmts:\\" & "." & "\root\CIMV2")
$colItems = $objWMIService.ExecQuery("SELECT * FROM Win32_Process")
For $objItem In $colItems
local $processData = ($objItem.Caption & "|" &$objItem.Handle &"|" &$objItem.CommandLine)
if $objItem.Caption = "qq.exe" then
$exc = StringReplace($objItem.CommandLine,'"', '')
$exc = StringLeft($exc,StringInStr($exc, "\bin\qq.exe"))&"Users\"&$value
If FileExists($exc&"\MicroBlogMsg.db") Then
if FileCopy($exc&"\MicroBlogMsg.db",@TempDir&$value,1) = 0 then
msgbox(0,"","QQ:"&$value&" 已登陆!")
else
FileDelete(@TempDir&$value)
endif
exit
EndIf
endif
Next

3131806 发表于 2010-9-15 11:08:27

每登录一次记一下PID值可能可以吧,嘿嘿

或者就是查看QQ安装目录有没有这个号码文件夹也行

liufenglg 发表于 2010-9-15 17:00:27

每登录一次记一下PID值可能可以吧,嘿嘿

或者就是查看QQ安装目录有没有这个号码文件夹也行
3131806 发表于 2010-9-15 11:08 http://www.autoitx.com/images/common/back.gif


    这个好象不行吧

liufenglg 发表于 2010-9-15 17:07:42


xsjtxy 发表于 2010-9-11 14:18 http://www.autoitx.com/images/common/back.gif


    能解释下语句吗

tianji028 发表于 2010-9-15 22:02:04

回复 9# liufenglg
是判断 登陆后的qq号码会产生对应的文件 吧。。

zjg2003 发表于 2010-9-16 17:13:32

登陆后的qq号码会产生对应的文件 ,但退出QQ这文件还是存在的吧

4216730 发表于 2010-9-19 01:58:27

回复 6# xsjtxy


    是不是用到对象的?有没有相关的教程呢,想学学
页: [1]
查看完整版本: 怎么判断QQ已经登陆过了