找回密码
 加入
搜索
查看: 1464|回复: 9

一个自安装脚本——虚拟机

[复制链接]
发表于 2009-5-24 21:56:50 | 显示全部楼层 |阅读模式
注册年余,只为自己写自安装脚本,也有好几十个了

从未在此发过脚本!今天凑一脚!

#requireadmin
#Region ;**** 参数创建于 AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=vmware.ico
#AutoIt3Wrapper_outfile=VMware_zd.exe
#AutoIt3Wrapper_Res_Description=VMware 虚拟计算机 AU3自动安装脚本
#AutoIt3Wrapper_Res_Fileversion=1.0.0.0
#AutoIt3Wrapper_Res_LegalCopyright=版权所有 (C) 2008 wang131738
#AutoIt3Wrapper_Res_Icon_Add=vmware.ico
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****

For $i = 0 to 1
$var1 = InputBox("路径选择", "开始 VMware 虚拟计算机 的自动安装,请输入安装路径盘:","C", " M1");显示以一个输入框
        If @error = 1  And $i = 0 Then
                MsgBox(4096,"错误", "点错按钮啦!"& @CR & @CR & "还有 1 次机会, 小心操作哦!")
                ContinueLoop
        ElseIf @error = 1 And $i = 1 Then
                $iMsgBoxAnswer = MsgBox(262192,"警告","没有机会了! 脚本将结束!")
                Select
                        Case $iMsgBoxAnswer = 1
                                Exit
                EndSelect
        EndIf
       
        $A = FileExists($var1 & ":")
        If $A = 0 And $i = 0 Then
                MsgBox(16, "警告!", "所选驱动器不存在! 重新操作!"& @CR & @CR & "还有 1 次机会, 小心操作哦!")
                ContinueLoop
        ElseIf         $A = 0 And $i = 1 Then
                $iMsgBox = MsgBox(262192,"警告","没有机会了! 脚本将结束!")
                Select
                        Case $iMsgBox = 1
                                Exit
                EndSelect       
        EndIf
        If @error = 0  And $A = 1 Then ExitLoop
Next
If FileExists($var1 & ":\Program Files") Then
Else  
        DirCreate($var1 & ":\Program Files")
EndIf
$title="VMware Workstation"
Run("VMware-workstation-6.0.2-59824.exe")
WinWait($title,"Welcome to the Installation")
If Not WinActivate($title,"User Name:") Then WinActivate($title,"Welcome to the Installation")
WinWaitActive($title, "Welcome to the Installation")
ControlClick($title, "Welcome to the Installation", 11500)
WinWaitActive($title, "Please select a setup type.")
ControlClick($title, "Please select a setup type.", 11500)
WinWaitActive($title, "Destination Folder")
$var2 = ControlGetText($title, "Destination Folder", 11909 )
$var3 = StringLeft ( $var2, 1 )
If $var3 = $var1 Then
        WinWaitActive($title, "Install VMware Workstation to:")
        ControlClick($title, "", 11500 )       
ElseIf $var3 <> $var1 Then
        ControlClick($title, "Install VMware Workstation to:", 11484)
        $var4 = StringReplace ( $var2, 1, $var1 )
        ControlSetText($title, "Change Current Destination Folder", 12438, $var4 )
        ControlClick($title, "", 11523 )
        WinWaitActive($title, "Install VMware Workstation to:")
        ControlClick($title, "", 11500 )       
EndIf
WinWaitActive($title,"Create shortcuts for VMware")
ControlClick($title, "Create shortcuts for VMware", 11500 )
WinWaitActive($title,"Click Install to begin the installation")
ControlClick($title, "Click Install to begin the installation", 11551 )
WinWait($title,"Registration Information")
If Not WinActivate($title,"Registration Information") Then WinActivate($title,"Registration Information")
WinWaitActive($title,"Registration Information")
ControlFocus($title, "", 12627)
ControlSend($title, "", 12627, "131738")
ControlFocus($title, "", 910)
Opt("SendKeyDelay", 30)
ControlSend($title, "", 910, "xxxxx-xxxxx-xxxxx-xxxxx")
ControlClick($title, "Registration Information", 11632)
WinWaitActive($title, "Installation Wizard Completed")
ControlClick($title, "Installation Wizard Completed", 11523)
WinWaitActive($title, "You must restart your system for the")
ControlClick($title, "You must restart your system for the", 622)

$title="安装 - VMware Workstation 汉化补丁 - 虚拟机之家合作版"
Run("setup_xnjzj.exe")
WinWaitActive($title, "欢迎使用 ")
ControlClick($title, "", "TButton3")
WinWaitActive($title, "许可协议")
ControlClick($title, "许可协议", "TCheckBox1" )
ControlClick($title, "许可协议", "TButton4" )
WinWaitActive($title, "如果您想继续安装")
ControlClick($title, "", "TButton4")
WinWaitActive($title, "选择目标位置")
ControlClick($title, "", "TButton5")
WinWaitActive($title,"选择附加任务")
$WinPosArray = WinGetPos ($title)
$TNewCheckListBoxArray = ControlGetPos ( $title, "", "TNewCheckListBox1")
$Width = $WinPosArray[0]+$TNewCheckListBoxArray[0]
$Height =  $WinPosArray[1]+$TNewCheckListBoxArray[1]
MouseClick("left",$Width+14, $Height+57)
MouseClick("left",$Width+14, $Height+80)
MouseClick("left",$Width+14, $Height+120)
ControlClick($title, "", "TButton5")
WinWaitActive($title,"准备安装")
ControlClick($title, "准备安装", "TButton5")
WinWait($title,"VMware Workstation 汉化补丁")
If Not WinActivate($title,"VMware Workstation 汉化补丁") Then WinActivate($title,"VMware Workstation 汉化补丁")
WinWaitActive($title,"VMware Workstation 汉化补丁")
$WinPosArray = WinGetPos ($title)
$TNewCheckListBoxArray = ControlGetPos ( $title, "", "TNewCheckListBox1")
$Width = $WinPosArray[0]+$TNewCheckListBoxArray[0]
$Height =  $WinPosArray[1]+$TNewCheckListBoxArray[1]
MouseClick("left",$Width+14, $Height+37)
ControlClick($title, "VMware Workstation 汉化补丁", "TButton5")
SplashTextOn("自动安装", "已完成 VMware 虚拟计算机 的自动安装.", 250, 70, -1, -1, 0, "", 14)
Sleep(2000)
 楼主| 发表于 2009-5-24 21:59:37 | 显示全部楼层
标题分类好像牛头不对马嘴也!!!!!!!!
发表于 2009-5-24 23:33:55 | 显示全部楼层
本帖最后由 lynfr8 于 2009-5-24 23:35 编辑

代码写得蛮漂亮的
撇开技术交流角度
其实绿盟的虚拟机绿色版都挺好用的
重装系统不用那么麻烦

http://www.xdowns.com/soft/softdown.asp?softid=6317
VMware Workstation V6.5.2 Build 156735 绿色汉化版_最强大的虚拟机、虚拟PC
特别信息/注册码:
DUMA4-DMHFP-D2M4G-4PXZL


现在都少写自动安装脚本了
尽量找绿色版或者自己做成绿软
确实找不到绿色版的才考虑自动安装
 楼主| 发表于 2009-5-25 00:23:29 | 显示全部楼层
本帖最后由 131738 于 2009-5-25 00:34 编辑

AutoIt 我也就会自安装这点,其它太高深了!!!!!!!!!!

不喜用绿色版,写些自安装脚本也算自娱自乐吧!!!!!!!

那个注册码收下了谢谢!!!!!!!!!!!
发表于 2009-5-26 15:08:03 | 显示全部楼层
学习了,很好很强大。注册码收下。
发表于 2009-5-26 16:54:22 | 显示全部楼层
这个也用自动化安装~我觉得还是自己配置比较稳妥~呵呵~
发表于 2009-5-27 21:39:09 | 显示全部楼层
这个很强大,收下了。
发表于 2009-5-28 09:09:08 | 显示全部楼层
好东西  收藏了
发表于 2009-5-30 01:12:51 | 显示全部楼层
学习了,很好很强大。注册码收下。
发表于 2009-8-10 01:38:02 | 显示全部楼层
强悍...学习一下~~~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-5-2 22:49 , Processed in 0.079188 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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