autoit3 腳本自動安裝實例


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

#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:")
View Code

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 判定是否存在進程,如果不存在!調過

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM