找回密码
 加入
搜索
查看: 3031|回复: 7

winwaitactive后send失效

[复制链接]
发表于 2010-1-29 21:27:47 | 显示全部楼层 |阅读模式
在做一个自动上传的功能,公司内网上有个网页,点击一个按钮后可以打开本地浏览,选择一个指定的文件倒入。
已经可以做到点击那个按钮后顺利弹出本地浏览框(网页本身功能),此时我想用send语句在路径上填入想上传的文件,然后点击确定即可。但是send语句不执行,用msgbox调试的时候发现,只有在手动关闭本地浏览文件框后,程序才自动执行下去。。。

。。。。。。
$oFile = _IEGetObjByName ($oIE, "my_file_element")
_IEAction ($oFile, "click")   
;此时弹出本地浏览框,然后:
WinWaitActive("Choose file")
Send("360se.ini")  ;Edit已经激活,到此应该在路径上填入了这个360se.ini,但实际上没有执行,但如果手动点击关闭本地浏览之后,send语句才开始执行。。。
请高人相助。。。无法发送全段程序因为外网无法访问这个网页。
 楼主| 发表于 2010-1-29 22:00:37 | 显示全部楼层

评分

参与人数 1金钱 -10 收起 理由
afan -10 警告,禁止纯表情!

查看全部评分

 楼主| 发表于 2010-1-31 21:48:37 | 显示全部楼层

评分

参与人数 1金钱 -10 收起 理由
afan -10 警告,禁止纯表情!

查看全部评分

发表于 2010-2-1 15:56:52 | 显示全部楼层
WinWait ( "Choose file" )
WinActivate ( "Choose file"  )
Send("360se.ini")
发表于 2010-2-1 15:59:05 | 显示全部楼层
WinWait + WinActivate ≠ WinWaitActive
貌似
WinWait + WinActivate = WinWaitActive + 手动激活窗口
 楼主| 发表于 2010-2-3 01:32:27 | 显示全部楼层
没用阿还是一样不会输入数据。。。
奇怪的问题是如果我先运行一遍这个程序,当卡在输入文件名的地方以后,再开启一次这个程序,即同时运行两个相同程序的时候,第二个程序会在第一个程序打开的Choose file里输入正确的字符串。。。无语了。。
发表于 2010-2-3 02:32:45 | 显示全部楼层
发表于 2010-2-5 18:39:21 | 显示全部楼层
用窗口工具找到你要输入东西的控件ID.
用ControlSetText("AutoIt Help","","Edit2","23123123")
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-6-3 12:23 , Processed in 0.090482 second(s), 29 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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