关于静默安装软件。【已解决】
本帖最后由 kv998 于 2010-3-11 19:29 编辑Run("1.exe /S")
Run("2.exe /S")
Run("3.exe /S")
Run("4.exe /S")
Run("5.exe /S")
本人想静默安装以上5个软件。但是会同时运行。请问要怎样才能实现安装完了第一个软件后才运行第二个,然后再第三个。。。。。最好有进度条:face (18):
谢谢~! 本帖最后由 水木子 于 2010-3-11 09:44 编辑
去AutoIt Help看看吧!RunWait 本帖最后由 水木子 于 2010-3-11 10:00 编辑
关于安装进度的问题,我这里有个例子你不妨看看!#include <WindowsConstants.au3>
GUICreate("进度条", 380, 200)
GUISetFont(12, 400, 0, "MS Sans Serif")
$Progress1 = GUICtrlCreateProgress(50, 50, 260, 30)
$But1 = GUICtrlCreateButton("开始", 200, 150, 60, 30, $WS_GROUP)
$But2 = GUICtrlCreateButton("退出", 280, 150, 60, 30, $WS_GROUP)
$Combo1 = GUICtrlCreateCombo("1", 210, 100, 80, 50)
GUICtrlSetData(-1, "1|2|3|4|5|6|7|8|9|10|", "1")
GUICtrlCreateLabel("选择安装软件的数量:", 50, 100, 160, 24)
$Label2 = GUICtrlCreateLabel("0%", 320, 53, 50, 24)
$Label3 = GUICtrlCreateLabel("已安装软件数量:0", 20, 155, 160, 24)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case - 3, $But2
Exit
Case $But1
begin(GUICtrlRead($Combo1))
EndSwitch
WEnd
Func begin($sAmount)
$z = 1
For $i = 1 To 100
GUICtrlSetData($Progress1, $i)
GUICtrlSetData($Label2, $i & "%")
$sP = GUICtrlRead($Progress1)
$var = IsInt($sP / Int(100 / $sAmount))
If $var = 1 Then
GUICtrlSetData($Label3, "已安装软件数量:" & $z & ' / ' & $sAmount)
$z += 1
Sleep(1000)
EndIf
If $sP = "100" Then MsgBox(0, "提示", "安装完成")
Next
EndFunc ;==>begin 谢谢你的帮助~!:face (36): 回复 4# kv998
不用客气,如果问题已经解决了,建议LZ修改下标题吧!加个【已解决】就可以了! 我通过bat调用au3,经常会出错~单独运行AU3又没问题~郁闷~~~ 不过现在改进了~读取本底文本,然后再安装,不用这样的了~~~
页:
[1]