关于QQ文件自动接收
本帖最后由 a000000 于 2009-8-14 12:30 编辑电脑的报价每天都更新,每天必须守在电脑前,请各位高手支招,任何才能自动点击接收?(安全问题不管,只要能自动点接收就好了,别的问题统统不管)网上的软件全需要注册,请问高手能不能用au3实现?
如图:
自己顶,请大侠指点啊 无法逾越的障碍? 这个,难道不能用QQ邮箱? 回楼上,咱说了不管用啊,你也看见了,他们都直接发QQ文件,人多了,咱说也米用 他们好像用的群发器 每天接受几十个报价
累啊 2008版QQ测试成功~$bt = WinGetTitle('与 ','接收')
ControlClick($bt, '接收', 'Static47') 试验了一下,好像不自动接受 本帖最后由 afan 于 2009-8-14 12:04 编辑
需要已经是交谈窗口,如果这个窗口还没打开那肯定不行,你可以QQ设置自动弹出聊天窗口。另外 2009版QQ不行 2008版QQ测试成功~$bt = WinGetTitle('与 ','接收')
ControlClick($bt, '接收', 'Static47')
afan 发表于 2009-8-14 11:50 http://www.autoitx.com/images/common/back.gif
这个Static47是个变量啊,我这边是46,如果同时发两个文件就是46跟48了 这个你再调整一下吧,核对按钮的文字 $bt = WinGetTitle('与 ','接收')
ControlClick($bt, '接收', '') ok,谢了,楼上,最终代码完整如下:
While 1
$bt = WinGetTitle('与 ','接收')
ControlClick($bt, '接收', '')
Sleep(1000)
WEnd QQ2009版本自动接收文件
思路:
1.监视托盘图标文字,当企鹅图标变成对方头像就会title变空
2.由于QQ2009特殊控件问题,只能以相对坐标模拟点击方式自动接收文件
注意:每个人的窗口‘接收‘坐标不一定一致,根据自己情况再修改
MouseClick("left", $size+421, $size+164, 1)中的X:421 Y:164
3.经过检测是可行的,但有些细节未处理
例如接收完自动winclose窗口...
#Include <GuiToolBar.au3>
#include <winapi.au3>
Local $iProcessID
While 1
Sleep(2000)
If _SysTray_ClickItem("", "left", 2)=1 Then
MsgBox(0,0,0)
$pid=ProcessExists("QQ.exe")
Sleep(1000)
$wlis=WinList()
for $i=1 to $wlis
if $wlis[$i]<> "" AND IsVisible($wlis[$i]) then
_WinAPI_GetWindowThreadProcessId($wlis[$i], $iProcessID)
If not StringCompare($iProcessID,$pid) AND not StringInStr($wlis[$i], "QQ")then
WinActivate($wlis[$i])
$size = WinGetPos($wlis[$i])
MouseClick("left", $size+421, $size+164, 1)
EndIf
EndIf
Next
EndIf
WEnd
Func _SysTray_ClickItem($iTitle, $iButton = "left", $iClick = 2)
Local $hToolbar, $iButCount, $aRect, $i
$hToolbar = ControlGetHandle('', '', '')
$iButCount = _GUICtrlToolbar_ButtonCount($hToolbar)
For $i = 0 To $iButCount - 1
$cID = _GUICtrlToolbar_IndexToCommand($hToolBar, $i)
If _GUICtrlToolbar_GetButtonText($hToolBar, $i)='' Then
MsgBox(0,0,'1')
$aRect = _GUICtrlToolbar_GetButtonRect($hToolBar, $i)
ControlClick("", "", "ToolbarWindow321", $iButton, $iClick, $aRect, 5)
$aRect = 0
Return 1
Else
EndIf
Next
EndFunc
Func IsVisible($handle)
If BitAnd( WinGetState($handle), 2 ) Then
Return 1
Else
Return 0
EndIf
EndFunc
页:
[1]
2