botanycc 发表于 2008-5-10 18:11:52

如何让它按顺序来安装

我想弄个软件自动安装程序,如示例,如果我全选了再点开始安装,就会一起执行所选的所有软件,如何让它按顺序来一个个的安装呢?请大家指点一二,谢谢了。


#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 219, 168, 193, 125)
$Checkbox1 = GUICtrlCreateCheckbox("千千静听", 24, 24, 73, 25)
$Checkbox2 = GUICtrlCreateCheckbox("迅雷", 24, 55, 73, 33)
$Button1 = GUICtrlCreateButton("开始安装", 50, 130, 80, 25)
$Check = GUICtrlCreateCheckbox("全选", 50, 100, 209)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
$msg = GUIGetMsg()

Select
Case $msg = $GUI_EVENT_CLOSE
   ExitLoop
Case $msg=$Button1

    _res()
Case $msg=$Check
   _Check()
EndSelect

WEnd

Func_Check()

$Choose=GUICtrlRead($Check )

Switch $Choose

      Case 1
             GUICtrlSetState ($Checkbox1, $GUI_CHECKED)
         GUICtrlSetState ($Checkbox2, $GUI_CHECKED)
    Case 4
      GUICtrlSetState ($Checkbox1, $GUI_UNCHECKED)
      GUICtrlSetState ($Checkbox2, $GUI_UNCHECKED)
EndSwitch

EndFunc

Func _res()

   If GUICtrlRead($Checkbox1) = $GUI_CHECKED Then
    run ("F:\au3\q.exe")
   EndIf
   If GUICtrlRead($Checkbox2) = $GUI_CHECKED Then
    run ("F:\au3\x.exe")
   EndIf
EndFunc

[ 本帖最后由 botanycc 于 2008-5-10 19:55 编辑 ]

dingamao 发表于 2008-5-10 19:44:28

用runwait代替run
run表示运行程序,而且不论运行的程序有没有结束也直接跳转到下一句(当然程序出现错误退出则另当别论)而runwait则是运行的程序结束了才能继续往下执行
它们的关系,有点像CMD中start与start /wait的关系

botanycc 发表于 2008-5-10 19:54:51

嗯,原来这么简单啊,谢谢版主。在这里发问题总能很快得到解决,祝论坛越办越好

changyu033 发表于 2014-8-15 19:12:41

路過,
學起,感謝dingamao解說!!
页: [1]
查看完整版本: 如何让它按顺序来安装