2012年11月16日 星期五

AutoIT 教學

AutoIT 可以將人操作 Windows 軟體的動作做成批次檔,這樣就可以用來自動操作 Windows 軟體。例如 IT / MIS 要遠端幫同仁安裝軟體,可以先做好自動安裝檔派送過去就行了。

Download AutoIT and install

以自動安裝 PDFCreator 1.5.1 為例,預設值有 PDFArchitect,我想把這個打勾拿掉。


1. 建一個新目錄 C:\Temp\pdfcreator151,將 PDFCreator-1_5_1_setup.exe 放進去。執行 PDFCreator-1_5_1_setup.exe 讓它停在 Select Setup Language。

2. 開啟 AutoIt Window Info 收集 Windows 的資訊,例如按鈕的名稱。操作方法如下圖。

3. 開啟 SciTE Script Editor 製作 AutoIT 批次檔,將檔案存於 C:\Temp\pdfcreator151。(分號是註解)

;執行 PDFCreator-1_5_1_setup.exe
run("PDFCreator-1_5_1_setup.exe")
;等待 Select Setup Language 視窗。用上一步驟的方法取得 Windows title "Select Setup Language"。
WinWaitActive("Select Setup Language")
;按 OK 按鈕。用上一步驟的方法在 Control 那一頁取得 ClassnameNN: TNewButton1。
ControlClick("Select Setup Language", "OK", "TNewButton1")
;等待 Welcome to the PDFCreator Setup Wizard
WinWaitActive("Setup - PDFCreator")
ControlClick("Setup - PDFCreator", "&Next >", "TNewButton1")
;等待 License Agreement
WinWaitActive("Setup - PDFCreator")
;按 I accept the agreement
ControlClick("Setup - PDFCreator", "", "TNewRadioButton1")
ControlClick("Setup - PDFCreator", "&Next >", "TNewButton2")
;等待 Select Components
WinWaitActive("Setup - PDFCreator")
;按 TAB, 向下鍵移到 PDFArchitect
Send("{TAB}")
Send("{DOWN}")
Send("{DOWN}")
Send("{DOWN}")
Send("{DOWN}")
;按空白鍵取消 PDFArchitect
Send("{SPACE}")
ControlClick("Setup - PDFCreator", "&Next >", "TNewButton2")
;等待 Ready to Install
WinWaitActive("Setup - PDFCreator")
ControlClick("Setup - PDFCreator", "&Install", "TNewButton2")
;休息 20 秒等待 InstallManager Setup 視窗
sleep(20000)
;等待 InstallManager Setup, click Decline
WinWaitActive("InstallManager Setup")
ControlClick("InstallManager Setup", "Decline", "Button3")
;wait for Completing the PDFCreator Setup Wizard
sleep(20000)
;等待 Completing the PDFCreator Setup Wizard
WinWaitActive("Setup - PDFCreator")
;uncheck Show help after setup
Send("{SPACE}")
ControlClick("Setup - PDFCreator", "&Finish", "TNewButton2")

4. 執行 pdfcreator151.au3 測試是否正確自動安裝 PDFCreator 1.5.1。


5. 用 Compile Script to .exe 將 AutoIT 批次檔轉成執行檔 pdfcreator151.exe。

如果只將 pdfcreator151.exe 派送到遠端電腦會無法安裝成功,因為缺少 PDFCreator-1_5_1_setup.exe。

解法1: 用 Winrar 將這兩個執行檔包起來,並設定為解壓縮自動執行 pdfcreator151.exe

解法2. 將 PDFCreator-1_5_1_setup.exe 放在全部人可以連到的網路磁碟機,修改 AutoIT 批次檔第一行 run("\\MyServer\MyShare\PDFCreator-1_5_1_setup.exe"),這樣只要派送 pdfcreator151.exe 到遠端電腦執行即可。

Reference:
http://skyboxs.net/2009/04/322/
http://e-mis.blogspot.tw/2012/04/autoit.html
http://www.autoitscript.com/autoit3/docs/functions/Send.htm

2 則留言:

  1. 請問 用什麼方把可以在最上頭 做出 右鍵 使用系統管理員 輸入帳號 密碼

    回覆刪除
    回覆
    1. 請參考這一篇 http://ithelp.ithome.com.tw/question/10015726

      刪除