close

 前言: NSIS可以做什麼 ?

  絕大多數我們所下載或購買的軟體,都會打包成一個安裝檔。使用者只需要提供部分資訊(EX: 選擇要
安裝哪些檔案、設定檔案安裝位置)之後,剩下的部份安裝程式都會自動幫你完成。

NSIS(Nullsoft Scriptable Install System) 就是用來製作這類型安裝程式的一套開發工具,由於其使用
上相當具有彈性且容易學習,因此目前有許多軟體的安裝檔都是以NSIS撰寫而成,更重要的是: 他是免費的!

開始學習寫NSIS:

  為了製作屬於自己的安裝程式,你必須學會如何撰寫NSIS腳本語言。所以在這之前請先準備好撰寫程式
的文字編輯環境,建議使用可標示行號的文字編輯軟體(EX: Notepad++), 因為在撰寫NSIS程式時,當發
生編譯錯誤, 其提示都是以第幾行來表示的。當然,如果有高亮度語法顯示(Syntax Highlighting)的功能
就更好了。

好的,對NSIS有初步認識並備妥適合自己的文字編輯器後,我們就可以開始來學習如何撰寫NSIS程式了:
不免俗地我們以Hello World做為學習的第一步:

代碼如下:
1  


這是一個很簡單的例子,做了兩件事
1. 在安裝進度的視窗內Show出一段文字
2. 彈出一個確認視窗, 然後一樣在視窗內Show出一段文字

對於有學過程式設計的朋友來說, 單看上面的語法應該可以猜出其大致的用法,
需要說明的部份大致如下:
1. ShowInstDetails 指的是在安裝過程中要不要顯示出安裝細節 有show跟hide兩種方式可以選擇

2. 在NSIS的架構中, 主要透過Section 跟 Page來構成程式的主架構:
Page指的是安裝過程中要顯示給使用者看到的那些頁面 (這個例子目前沒用到, 後續文章會另外做介紹)
Section則是在程式中類似function的區段 (安裝程式製作者可讓使用者選擇要/不要執行)
而一個Section區塊以SectionEnd做結尾

3. DetailPrint是把訊息印到安裝進度視窗中, 如下圖黑色框框內的字

4. MessageBox MB_OK 則是彈跳出一個確認視窗, 一樣我們可以設定裡面的訊息內容


程式執行結果如下:
2  

3    

當然看到目前為止,對於NSIS一定還會有很多疑問,但希望這一篇可以多少讓初次接觸NSIS
的朋友可以稍微不對它感到陌生: )

下一篇我們將先介紹如何將上面我們寫的NSIS程式編譯成執行檔,以顯示出上面的安裝畫面

PS. 關於NSIS我也是接觸不久, 所以如果有錯誤之處還請前輩們不吝指教^ ^

--
Reference:
1. NSIS用戶手冊(英文): http://nsis.sourceforge.net/Docs/
2. NSIS用戶手冊(中文): http://omega.idv.tw/nsis/Contents.html

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 府低 的頭像
    府低

    府低 的生活記事

    府低 發表在 痞客邦 留言(1) 人氣()