1. 程式人生 > >NSIS教程(6): 使用第三方外掛

NSIS教程(6): 使用第三方外掛

NSIS內建了很多指令,這些指令可以滿足我們基本需求,但難免會遇到NSIS沒有內建的功能,如程序操作,後臺執行(即多執行緒),7z壓縮等等,這個時候我們就需要藉助第三方外掛來滿足我們所需要的功能了。

一、外掛獲取

二、外掛使用

NSIS外掛以dll的形式存在,我們以KillProc外掛為例(從名字上可以看出該外掛提供殺程序的功能),從http://nsis.sourceforge.net/KillProc_plug-in上下載下來的一般是一個壓縮包,解壓之後找到dll檔案,如KillProc.dll檔案。

這裡寫圖片描述

然後執行如下步驟:

  1. 將dll檔案拷貝到NSIS安裝目錄下的Plugins\x86-ansi

    目錄。

  2. 在官方文件上找到該外掛提供的函式,以及函式的引數傳遞形式,返回值形式。NSIS中外掛函式的引數傳遞形式有2種形式:1) 使用$0~$9, $R0~$R9來傳遞;2) 使用堆疊來傳遞。

  3. 在NSIS指令碼中按照函式宣告的形式來呼叫,需要在函式名前加上dll名稱(不需要.dll字尾),如KillProc::KillProcesses

 Section
   StrCpy $0 "foo.exe"  # 變數賦值

   KillProc::KillProcesses
   StrCmp $1 "-1" wooops

   wooops:
   Abort

   completed:
 SectionEnd