建立安裝檔 – NSIS

不論是經由 python 的 pyinstaller 包裝成exe檔 ,或是 Java 的 jar2exe 建立 exe 檔,最終還需 copy 到指定的目錄(C:\Program File),然後在開始選單或桌面建立執行的 icon,更何況有時還要複製相關的 dll 函數庫。這些複雜的設定,不是一般使用者能完成的。

建立安裝檔常用的工具有 InstallShied(強大但要錢),Advanced Installer(超強且要錢),NSIS(簡單不用錢)

NSIS簡介

NSIS (Nullsoft Scriptable Install System) 是一個很老牌的安裝程式系統,功能齊全且免費

NSIS主程式下載及安裝

請到官網下載最新版本主程式 https://nsis.sourceforge.io/Main_Page ,點選 Download 再進行安裝即可

todo

安裝Plugin

除了主程式外,還需下載外掛函數庫,常用的外掛有如下

AccessControl.dll : 設定目錄或檔案權限

Download

解開後,將 AccessControl\Plugins\i386-unicode\AccessControl.dll  copy 到 C:\Program Files (x86)\NSIS\Plugins\x86-unicode

KillProcDLL.dll : 移除時,強制關閉Process

Download

解開後,將 E:\nisi\KillProcDLL-bin\KillProcDLL.dll copy 到 C:\Program Files (x86)\NSIS\Plugins\x86-unicode

literFirewall.dll : 設定防火牆

Download

解開後,將 2011-07-liteFirewall\liteFirewall\bin 底下的二個檔 liteFirewall.dll 及 liteFirewallW.dll copy 到 C:\Program Files (x86)\NSIS\Plugins\x86-unicode

UAC.dll : 開啟UAC權限選單

Download

解開後,將 UAC\Plugins\x86-unicode\UAC.dll copy 到 C:\Program Files (x86)\NSIS\Plugins\x86-unicode
UAC底下的 UAC.nsh copy 到 C:\Program Files (x86)\NSIS\Include。

範例 Script

假設我們的專案在 d:\python\game,經由 pyinstall 包裝完成 d:\python\game\dist\game.exe。

請由如下網址下載 包裝範例, 解開後,將所有檔案複製到 d:\python\game之下,然後修改 setup.nsi 裏的YouTube 關鍵字,換成包裝後的 game.exe。

最後,在 setup.nsi 按右鍵/Compile NSIS Script,即可包裝出 game_01.exe安裝檔了。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *