可以將 .au3 腳本文件編譯為獨(dú)立的可執(zhí)行文件; 文件可以在沒有安裝 AutoIt (或者說沒有 AutoIt3.exe 解釋程序)的機(jī)器上運(yùn)行.
編譯好的腳本程序是經(jīng)過壓縮和可以加密的,可使用 FileInstall 函數(shù)加載所需的外部文件(同樣也會(huì)被壓縮和可以加密)到生成的程序中.
所有被 #include(包含) 的文件都會(huì)被連接并編譯到目標(biāo)文件中,這樣腳本(程序)在運(yùn)行時(shí)就不再需要這些文件了.
注意: 編譯不檢查語法, 因此必須避免腳本的語法錯(cuò)誤!.
Aut2Exe 的啟動(dòng)方法有以下三種:
此方法要求完整安裝AutoIt(使用英文版).
1. 打開開始菜單并選擇 AutoIt v3 程序組.
2. 點(diǎn)擊 “Compile Script to .exe”.
3. Aut2Exe 的主界面就出現(xiàn)在您的面前了.
4. 點(diǎn)擊“瀏覽”按鈕分別選擇源碼文件.au3 ; 輸出目標(biāo)文件 .exe .
5. 您還可以為您的程序選擇一個(gè)有意義的圖標(biāo);
(AutoIt 在 Au3 安裝目錄下 Program Files\AutoIt3\Aut2Exe\Icons
提供了一些典型的 ico 圖標(biāo)).
6. 唯一的其它選項(xiàng)是,使用"壓縮"菜單設(shè)定你可能需要的壓縮級(jí)別 (尤其是使用 FileInstall 添加了外部文件的腳本時(shí)).
這里的選擇將決定編譯轉(zhuǎn)換的速度, 選擇“最高”則壓縮速度將較緩慢.
不同的壓縮級(jí)別與解壓縮速度編輯的.exe 文件,在運(yùn)行時(shí)是相同的.
7. 單擊 Convert 按鈕開始編譯腳本.
注意: 腳本也可以編譯成擴(kuò)展名為 .a3x 的文件. 但 .a3x 文件需要與 AutoIt.exe 一起運(yùn)行.
.a3x 文件包含腳本本身、全部 #include (包含)文件、FileInstall 添加文件. 這個(gè)格式的發(fā)布文件體積較小.
因?yàn)樵诿總€(gè)編譯好的程序中不包括 AutoIt3.exe. 你仍然需要在目標(biāo)機(jī)器上安裝AutoIt3.exe
此方法要求完整安裝AutoIt(漢化版安裝也一樣)
1. 在資源管理器里面找到您需要編譯的腳本文件(.au3).
2. 在腳本圖標(biāo)上面點(diǎn)擊右鍵,訪問彈出菜單.
3. 文件將自動(dòng)編譯為與腳本同名、同目錄的 .exe 可執(zhí)行文件,.
這種方式,Aut2Exe 使用當(dāng)前圖標(biāo)/壓縮設(shè)置(也即最后一次運(yùn)行 Aut2Exe 時(shí)的設(shè)置,比喻在方法 1 中的手動(dòng)設(shè)置).
Aut2Exe.exe 程序可以使用如下命令行運(yùn)行:
Aut2exe.exe /in <腳本文件.au3> [/out <輸出文件.exe>] [/icon <圖標(biāo)文件.ico>] [/comp 0-4] [/nopack] [x64] [/bin <binfile.bin>]
命令參數(shù)解釋如下:
命令開關(guān) | 用法描述 | 默認(rèn)值 |
/in | <腳本文件.au3> 腳本文件的路徑和文件名. | 無默認(rèn)值. 文件必須指定 |
/out | <輸出文件.exe> .exe 輸出文件的路徑和文件名. <輸出文件.a3x> .a3x 輸出文件的路徑和文件名. |
輸出 .exe 文件 |
/icon | <圖標(biāo)文件.ico> 輸出文件的圖標(biāo)路徑和圖標(biāo)文件名. | 使用 AutoIt 圖標(biāo) |
/comp | 壓縮級(jí)別 (不涉及 UPX 壓縮). 必須在 0 (不壓縮) 到 4 (最大壓縮)之間. |
2 |
/nopack | 使用 UPX 編譯不壓縮文件. | 壓縮 |
/pack | 使用 UPX 編譯并壓縮文件. | 壓縮 |
/x64 | 編譯為 x64 (64 位) 結(jié)構(gòu). | 見注意事項(xiàng) |
/x86 | 編譯為 x32 (32 位) 結(jié)構(gòu). | 見注意事項(xiàng) |
/console | 編譯為控制臺(tái)應(yīng)用程序. | 編譯為 Windows 應(yīng)用程序 (/gui) |
/gui | 編譯為 Windows 應(yīng)用程序. | 編譯為 Windows 應(yīng)用程序 (/gui) |
/bin | <bin文件.bin> 用于編輯的 bin 文件的路徑和文件名. | 搜索 Aut2exe 文件夾 |
/in c:\myscript.au3 /out c:\myapp.exe /icon c:\myicon.ico /x64
創(chuàng)建 c:\myapp.exe 文件、正常壓縮、使用指定圖標(biāo)、編譯為 x64 系統(tǒng)應(yīng)用.
/in c:\myscript.au3
創(chuàng)建 c:\myscript.exe 文件、使用 unicode(統(tǒng)一碼)、 正常壓縮、使用默認(rèn) AutoIt 圖標(biāo)、編譯為32位系統(tǒng)應(yīng)用.
長(zhǎng)文件名應(yīng)該加雙引號(hào),例如: "C:\Program Files\Test\test.au3".
除 /in 以外,所有的開關(guān)都是可選的.
默認(rèn)情況下,32 位編譯器生成 32 位二進(jìn)制文件,64 位編譯器生成 64 位二進(jìn)制文件. 使用 / x86 和 / X64 參數(shù)明確指定輸出文件
從 3.2.8.1 版起,/pass 與 /nodecompile 開關(guān)是多余的. 如果使用它們,將會(huì)忽略,而且已經(jīng)從上面列表中移除.
從 3.3.0.0 版起,/ansi 與 /unicode 開關(guān)是多余的
腳本編譯和使用 FileInstall 函數(shù)裝入外部文件時(shí),使用我(Jon)自己的壓縮算法
provider with jb51.net (unicode) |