找回密码
 加入
搜索
查看: 3346|回复: 8

[AU3基础] 请教一个关于"vmware 8.0 自动安装脚本"其中遇到的问题

  [复制链接]
发表于 2011-9-28 14:19:20 | 显示全部楼层 |阅读模式
本帖最后由 Ycxw2008 于 2011-9-28 14:24 编辑


一套软件基本都做好了,就差这个了.还望高手指教下
基本都是下面几个命令
Sleep(time)
WinWaitActive("VMware Workstation Setup","")
Send ("Key")
现在遇到的问题是


Send("点击后开始安装中了")  安装需要3分钟,
Sleep("12000")  设2分钟的话
WinWaitActive("VMware Workstation Setup","")


没安装完,脚本就结束了,因为标题都是同样的,没有文本信息,
这一步该怎么才能准确的等安装完才按执行其他的操作呢
勉强就差这一步,还望高手指点指点,当学习:)



窗口信息工具 都是底下的信息
>>>> 窗口 <<<<    
标题:        VMware Workstation Setup
类名:        #32770
坐标:        469, 200
大小:        503, 383
样式:        0x94C008CC
扩展样式:0x00050101
句柄:        0x00510910

>>>> 控件信息 <<<<   
类名:        
接口:        
类别名:        
名称:        
高级模式(类):
ID:        
文本:        
坐标:        
大小:        
控件点击坐标:        
样式:        
扩展样式:
句柄:        

>>>> 鼠标信息 <<<< 
坐标:        666, 210
光标 ID:        0
颜色:        0x91C9EE

>>>> 状态栏信息 <<<<    

>>>> 工具栏信息 <<<<

>>>> 可见文本 <<<<


>>>> 隐藏文本 <<<<

本帖子中包含更多资源

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

×
发表于 2011-9-28 22:37:44 | 显示全部楼层
我说一个不太好的方法,
类名为Internet Explorer_Server1,应该可以这样...
使用
$oIE = _IEAttach("VMware Workstation Setup", "Embedded")
然后就可以像ie操作一样了
 楼主| 发表于 2011-9-29 00:28:24 | 显示全部楼层
回复 2# suiyefeng

兄弟,好人做到底呗,稍微再给点信息,我都不知道怎么搜索.
发表于 2011-9-29 13:13:10 | 显示全部楼层
回复 3# Ycxw2008
   你有没有使用过ie操作???
应该很好弄的啊,,,,看看IE相关的函数吧,比如
$oIE = _IEAttach("VMware Workstation Setup", "Embedded")
If IsObj($oIE) Then
        MsgBox(0,0,_IEPropertyGet($oIE,"outertext"))
EndIf

应该可以的吧...自己试试吧..没测试,我也没把握,
发表于 2011-9-29 15:43:06 | 显示全部楼层
试试这个方式。
WinWait($title,"")
While  1
        If ControlGetHandle($title,"","Button7") Then exitloop
        Sleep(1000)
WEnd 
ControlClick($title,"","Button7","left",1)
发表于 2011-9-29 17:47:53 | 显示全部楼层
vmware 8.0 也能实现自动安装脚本呀!我也想学学?
发表于 2011-10-1 11:33:11 | 显示全部楼层
本帖最后由 zhangchongzhi 于 2011-10-1 11:35 编辑

呵呵,好喽。用的是判断第一个安装界面右边那片白色区域,用一个点的颜色值判断是否到安装界面了(用 pixelgetcolor 这个函数)。
第一步:先得到这个点的颜色值。
在第一个安装界面停住,用这个代码得到颜色值:
#RequireAdmin

AutoItSetOption("pixelcoordmode",2)                        ;设置用于象素函数的坐标参照
AutoItSetOption("mousecoordmode",2)

$title="VMware Workstation Setup"
WinActivate($title,"")
WinWaitActive($title,"")
$handle = WinGetHandle($title,"")
MouseMove(204,262)
        $color = PixelGetColor(204,262,$handle)                ;白色颜色  0xFFFFFF
MsgBox(0,"坐标颜色是:",$color)

;得到的值为16777215
第二步:开始喽。
发个我弄的代码呵,没弄完,不想装喽,后边的你弄呗。不会我再看看。:
#RequireAdmin

AutoItSetOption("pixelcoordmode",2)                        ;设置用于象素函数的坐标参照
AutoItSetOption("mousecoordmode",2)

Run("VMware-workstation-full-8.0.0-471780.exe")
$title="VMware Workstation Setup"
WinWaitActive($title,"")
$handle = WinGetHandle($title,"")
While 1
        Sleep(3000)
        $color = PixelGetColor(204,262,$handle)                ;得到的颜色值为:16777215        白色  0xFFFFFF.
        If         $color =   16777215                Then 
                ExitLoop
        EndIf        
WEnd
Sleep(2000)
MouseClick("left",344,335,1)

WinWaitActive($title,"")
Sleep(350)
MouseClick("left",50,127,1)

;试试类名
WinWaitActive("[CLASS:#32770]","")
Sleep(350)
MouseClick("left",351,338,1)
昨天下班弄到十一点半啊。眼睛都晕了。先前还想过 判断内存占用率 来看是否到了第一个安装界面,看了看,内存占用率一上去就不下来喽,不行了。昨天看了很多函数,收获不少。共同进步呵。
 楼主| 发表于 2011-10-1 12:57:04 | 显示全部楼层
本帖最后由 Ycxw2008 于 2011-10-25 18:05 编辑

回复 7# zhangchongzhi

感谢你,说实在的,我目前懂大概思路了,但是函数一窍不通.现在开始慢慢消化你的成果,
真心感谢


发表于 2011-10-14 17:34:59 | 显示全部楼层
建议使用桌面坐标 模拟认为操作
天然更安全
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-20 23:21 , Processed in 0.082281 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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