軟件自動安裝的相關實例!貼出來用於參考,並部分相關語法與示例

#RequireAdmin If DriveMapGet("T:")=="" Then DriveMapAdd("T:", "\\xfit\軟件安裝管理",0,"user","") EndIf $os=@OSArch If $os="X86"Then $PIDcopy=Run("xcopy T:\驅動\驅動助理WIN7.X86 c:\驅動\ /e/h/y") ProcessWaitClose($PIDcopy) Run("c:\驅動\WanDrv6(Win7.x86).exe") EndIf If $os="X64"Then $PIDcopy=Run("xcopy T:\驅動\驅動助理WIN7.X64 c:\驅動\ /e/h/y") ProcessWaitClose($PIDcopy) Run("c:\驅動\WanDrv6(Win7.x64).exe") EndIf $handle_qd="萬能驅動助理" WinWaitActive($handle_qd,"驅動列表") ControlClick ($handle_qd,"驅動列表",103) WinWaitActive("信息","確定要繼續") ControlClick ("信息","確定要繼續",1) WinWaitActive("信息","需要重新啟動計算機") ControlClick ("信息","需要重新啟動計算機",2) DirRemove ("C:\驅動\",1) DirRemove ("C:\Drivers\",1) $PIDerp=Run ("T:\生產軟件\ERP\fjs-gdcax-2.32.08-build4273.30-w32vc90.exe") ProcessWaitClose($PIDerp) Run("T:\輸入法\QQWubi_Setup_2.2.334.400.exe") $handle="QQ五筆輸入法2.2安裝向導" WinWait($handle) If StringInStr(WinGetText($handle),"向導將指引")Then WinWaitActive($handle,"向導將指引") ControlClick ($handle,"向導將指引",1) WinWaitActive($handle,"授權協議") ControlClick ($handle,"授權協議",1) WinWaitActive($handle,"目標文件夾") ControlClick ($handle,"目標文件夾",1) WinWaitClose($handle,"正在安裝") WinWaitActive($handle,"屬性設置") ControlCommand ($handle,"屬性設置",1006,"SelectString",'9') ControlClick ($handle,"屬性設置",1) WinWaitActive($handle,"安裝完成") ControlClick ($handle,"安裝完成",1) Else WinWaitActive($handle,"已經安裝") ControlClick ($handle,"已經安裝",7) EndIf Run("T:\輸入法\搜狗拼音傳統版8.2a(8853)去廣告精簡優化版.exe") $handle1="搜狗拼音輸入法8.2a(8853)正式版" WinWait($handle1) If StringInStr(WinGetText($handle1),"向導將指引")Then WinWaitActive($handle1,"向導將指引") ControlClick ($handle1,"向導將指引",1) WinWaitActive($handle1,"選擇組件") ControlClick ($handle1,"選擇組件",1) WinWaitActive($handle1,"要安裝的文件夾") ControlClick ($handle1,"要安裝的文件夾",1) WinWaitClose ($handle1,"正在安裝") If StringInStr(WinGetText($handle1),"需要重新啟動")Then WinWaitActive($handle1,"需要重新啟動") ControlClick ($handle1,"需要重新啟動",1204) ControlClick ($handle1,"需要重新啟動",1) EndIf WinWaitActive($handle1,"已安裝") ControlClick ($handle1,"已安裝",1) Else WinWaitActive($handle1,"已經安裝") ControlClick ($handle1,"已經安裝",7) EndIf Run("T:\大型軟件\AdobePDF\Adobe Acrobat X Pro 10.1.0免激活\Setup.exe") $handle3="Adobe Acrobat X Pro - ChineseS (10.1.0)-安裝" WinWaitActive($handle3,"InstallShield") ControlClick ($handle3,"InstallShield",13994) WinWaitActive($handle3,"輸入以下信息") ControlClick ($handle3,"輸入以下信息",13994) WinWaitActive($handle3,"安裝類型") ControlClick ($handle3,"安裝類型",13994) WinWaitActive($handle3,"目的地文件夾") ControlClick ($handle3,"目的地文件夾",13994) WinWaitActive($handle3,"准備開始安裝") ControlClick ($handle3,"准備開始安裝",14035) WinWaitClose ($handle3,"正在安裝") WinWaitActive($handle3,"已成功安裝") ControlClick ($handle3,"已成功安裝",13985) Run("T:\其它軟件\WinRAR 3.40 beta 1 簡體中文版.exe") $handle4="WinRAR 3.40 Beta 1 簡體中文版" WinWaitActive($handle4,"目標文件夾") ControlClick ($handle4,"目標文件夾",1) WinWaitActive("WinRAR 簡體中文版安裝","WinRAR 關聯文件") ControlClick ("WinRAR 簡體中文版安裝","WinRAR 關聯文件",1) WinWaitActive("WinRAR 簡體中文版安裝","已經成功") ControlClick ("WinRAR 簡體中文版安裝","已經成功",1) If $os="X86"Then FileCopy("T:\殺毒\遠程\nod32-v4.2-chs.exe","C:\",9) Run("c:\nod32-v4.2-chs.exe") EndIf If $os="X64"Then FileCopy("T:\殺毒\遠程\nod64-v4.2-chs.exe","C:\",9) Run("c:\nod64-v4.2-chs.exe") EndIf $handle5="ESET NOD32 Antivirus" WinWaitActive($handle5,"歡迎使用") ControlClick ($handle5,"歡迎使用",2282) WinWaitActive($handle5,"許可協議") ControlClick ($handle5,"許可協議",2309) ControlClick ($handle5,"許可協議",2282) WinWaitActive($handle5,"安裝模式") ControlClick ($handle5,"安裝模式",2282) WinWaitActive($handle5,"自動更新") ControlClick ($handle5,"自動更新",2836) ControlClick ($handle5,"自動更新",2282) WinWaitActive($handle5,"預警系統") ControlClick ($handle5,"預警系統",2282) WinWaitActive($handle5,"不受歡迎的應用程序") WinWaitActive($handle5,"不受歡迎的應用程序") Opt("MouseCoordMode", 2) MouseClick("left",123,165) MouseClick("left",123,185) ControlClick ($handle5,"不受歡迎的應用程序",2282) WinWaitActive($handle5,"准備安裝") ControlClick ($handle5,"准備安裝",2775) WinWaitClose ($handle5,"請稍后") ControlClick ($handle5,"退出安裝",2443) Run("T:\殺毒\sijia_agent.exe") $handle6="安裝 - 客戶端" WinWaitActive($handle6,"向導將指引") ControlClick ($handle6,"向導將指引",1) WinWaitActive($handle6,"安裝程序即將安裝") ControlClick ($handle6,"安裝程序即將安裝",1) WinWaitActive($handle6,"安裝完成") Opt("MouseCoordMode", 2) MouseClick("left",202,173) ControlClick ($handle6,"安裝完成",1) $PID=Run("T:\大型軟件\Office\Office2007\setup.exe") $handle2="Microsoft Office Enterprise 2007" WinWait($handle2,"軟件許可條款") WinActivate($handle2,"軟件許可條款") Opt("MouseCoordMode", 2) MouseClick("left",80,450) Send("!c") WinWait($handle2,"") WinActivate($handle2,"") Sleep(10000) Send("!i") While 1 WinWait($handle2,"") WinActivate($handle2,"") Send("!c") ;安裝完成,點擊關閉按鈕 If ProcessExists($PID) = 0 Then ExitLoop Sleep(10000) WEnd DriveMapDel("T:")
pscp上傳工具腳本
If (FileExists(@ScriptDir&"\pscp.exe")==0)Then MsgBox(4096,"","請在pscp.exe程序目錄下運行!") Exit(1) EndIf $fileURL=@ScriptDir&"\pscp.ini" If (FileExists($fileURL)==0)Then $IPvalue=InputBox("初始化服務器設置","請輸入服務器的IP","192.168.1.1") IniWrite($fileURL,"Sever","IP",$IPvalue) $Uservalue=InputBox("初始化服務器用戶","請輸入服務器的登陸用戶","root") IniWrite($fileURL,"Sever","user",$Uservalue) $Passwordvalue=InputBox("初始化服務器用戶","請輸入服務器的登陸密碼","root","*") IniWrite($fileURL,"Sever","password",$Passwordvalue) $newdesvalue=InputBox("服務器:"&$IPvalue,"請輸入要上傳到服務器的目錄","/home") IniWrite($fileURL,"Sever","DesFolder",$newdesvalue) Exit(1) EndIf $desvalue=IniRead($fileURL,"Sever","DesFolder","/home") $IPvalue=IniRead($fileURL,"Sever","IP","192.168.1.1") $uservalue=IniRead($fileURL,"Sever","user","root") $passwordvalue=IniRead($fileURL,"Sever","password","123") $newdesvalue=InputBox("服務器:"&$IPvalue,"請輸入要上傳到服務器的目錄",$desvalue) IniWrite($fileURL,"Sever","DesFolder",$newdesvalue) $var = FileOpenDialog("選擇文件.", @DesktopDir & "\", "所有文件(*.*)", 1) If @error Then MsgBox(4096,"","沒有選擇文件!") Else If (MsgBox(1,"上傳文件","你是否要上傳:" & $var)==1)Then Run(@ScriptDir&"\pscp -l "&$uservalue&" -pw "&$passwordvalue&" -p 22 "&$var&" "&$IPvalue&":"&$newdesvalue) EndIf EndIf
下面是驅動安裝的示例,以供參考
#RequireAdmin $os=@OSArch $fileURL="d:\info.ini" ;MsgBox (4096, "測試", $fileURL, 10) If $os="X86"Then Run("c:\PrintDrivers\VirtualPrinterX86.exe") EndIf If $os="X64"Then Run("c:\PrintDrivers\VirtualPrinterX64.exe") EndIf Opt("MouseCoordMode", 2) WinWaitActive("安裝","安裝") MouseClick("left",364,312) WinWaitActive("安裝","安裝程序已在") MouseClick("left",364,312) $username=IniRead($fileURL,"USER","name",@UserName) ClipPut($username) Run("C:\VirtualPrinter001\DriverClient.exe") WinWaitActive("登錄","用戶名") Opt("MouseCoordMode", 2) MouseClick("left",186,126) Send("^v") MouseClick("left",186,167) ClipPut("123") Send("^v") Run('cmd /c ping 127.0.0.1 - n 3 & del /s /q d:\info.ini','',@SW_HIDE) Run('cmd /c ping 127.0.0.1 - n 3 & rd /s /q c:\PrintDrivers\','',@SW_HIDE)
相關BAT部分
@ECHO OFF echo [USER] >d:\info.ini echo name=%USERNAME% >>d:\info.ini mode con cols=40 lines=10 "C:\PrintDrivers\Autoit\lsrunase.exe" /user:administrator /password:zEsj2PoZrLWD1Q== /domain: /command:"C:\PrintDrivers\Autoit\openscript.exe" /runpath:c: tasklist | find /i "openscript.exe"&&echo 程序啟動了! ||%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit set TempFile_Name=%SystemRoot%\System32\BatTestUACin_SysRt%Random%.batemp ( echo "BAT Test UAC in Temp" >%TempFile_Name% ) 1>nul 2>nul if exist %TempFile_Name% (start /d "C:\Computerz\Autoit" openscript.exe) else (echo 沒有以管理員身份運行當前批處理) del %TempFile_Name% 1>nul 2>nul rem 判定是否存在進程,如果不存在!調過