找回密码
 加入
搜索
查看: 9143|回复: 15

[系统综合] [已解决] :AU3自动安装中,如何锁定鼠标?

  [复制链接]
发表于 2014-12-23 13:56:00 | 显示全部楼层 |阅读模式
本帖最后由 QQ386263723 于 2014-12-24 20:37 编辑

请问在AU3自动安装中,安装程序时,乱动鼠标,频繁失去焦点可能会导致安装不成功,如何锁定鼠标,代码怎么写谢谢!
发表于 2014-12-23 14:35:39 | 显示全部楼层
BlockInput(标志)
 楼主| 发表于 2014-12-23 20:24:46 | 显示全部楼层
又是老师您为我解答,能具体点演示一下好吗?谢谢!
发表于 2014-12-23 21:55:31 | 显示全部楼层
帮助文档都有详细说明的
BlockInput(1)

Run("notepad")
WinWaitActive("[CLASS:Notepad]")
Send("{F5}")  ;粘贴当前时间和日期

BlockInput(0)
 楼主| 发表于 2014-12-23 22:09:09 | 显示全部楼层
老师我是这样您看对吗?
#NoTrayIcon
BlockInput(1)
Opt("MouseCoordMode", 0)
Opt("TrayIconDebug", 1) ;右下角显示脚本暂停在哪一步,方便测试使用
Opt("TrayAutoPause", 0);托盘图标单击后不暂停
Opt("MouseCoordMode", 1)
Run(@ScriptDir & "\WinRar.exe")
$title1 = "WinRAR 4.01 简体中文版"
$title2 = "WinRAR 简体中文版安装"
$text_1 = "目录文件夹(&D)"
$text_2 = "WinRAR 关联文件"
$text_3 = "WinRAR 已经成功地安装到文件夹"
WinWaitActive($title1,"")
ControlSetText($title1,$text_1,"Edit1","D:\Program Files\WinRAR")
ControlClick($title1,$text_1,"[CLASS:Button; INSTANCE:2]")
WinWaitActive($title2,$text_2)
ControlClick($title2,$text_2,"[CLASS:Button; INSTANCE:27]")
WinWaitActive($title2,$text_3)
ControlClick($title2,$text_3,"[CLASS:Button; INSTANCE:1]")
WinClose("WinRAR")
BlockInput(0)
但是安装完成后弹出这个电脑窗口,如何用函数关闭,谢谢!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
 楼主| 发表于 2014-12-23 22:14:35 | 显示全部楼层
老师您好:另外,在自动安装的过程中,能不能让(鼠标已经锁定)这几个文字出现在屏幕上做为提示就更加完美了,谢谢了!
发表于 2014-12-23 23:40:44 | 显示全部楼层
回复 5# QQ386263723


    这个窗口同样可以用 WinClose() 关闭,可以探测下这个窗口相关信息,参阅 Winclose函数帮助
发表于 2014-12-23 23:47:22 | 显示全部楼层
回复 6# QQ386263723
BlockInput(1)

SplashTextOn('', '安装进行中,键盘鼠标已禁用…', -1, 80, -1, -1, 1 + 32)

Sleep(3000)        ;这里换上安装代码

SplashOff()
BlockInput(0)
发表于 2014-12-24 07:44:34 | 显示全部楼层
学习了。。。。
 楼主| 发表于 2014-12-24 13:56:55 | 显示全部楼层
谢谢老师的解答,我运行的时候出现了一点小意外,安全软件拦截后,鼠标键盘不能动了,只好重新启动电脑了。不过完成安装后跳出的窗口,还是无法关闭,用WinKill()函数也关闭不了,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2014-12-24 14:49:33 | 显示全部楼层
回复 10# QQ386263723


    你确定看了帮助,哪怕只瞟了一眼?
“任何平台点击 Ctrl+Alt+Del,都将重新恢复输入” 重启?无语…

探测窗口做了吗?没做的话也帮不到你,不是WinClose的问题,而是使用了什么参数的问题
 楼主| 发表于 2014-12-24 14:58:09 | 显示全部楼层
注意/说明
本函数将发送一个关闭消息到目标窗口,效果因窗口不同而不同(它可能会询问是否保存数据,等等).若要强制性关闭目标窗口,请使用 WinKill 函数.若同时有多个窗口符合匹配条件则程序将关闭最近被激活的窗口.
我主要是不懂这句话的意思,
 楼主| 发表于 2014-12-24 15:03:26 | 显示全部楼层
 楼主| 发表于 2014-12-24 15:03:40 | 显示全部楼层
关闭了谢谢!我在前面加上了等待2秒。Sleep(2000)就可以了,
发表于 2014-12-24 15:09:16 | 显示全部楼层
WinClose('[TITLE:WinRAR; CLASS:CabinetWClass]')
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-11-16 12:40 , Processed in 0.094403 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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