NSIS打包軟件使用
最近做的一個調用遠程桌面的小應用需要打個安裝包,並且在安裝的時候需要添加注冊表,我之前使用的都是"Advanced Installer"來打包應用程序的,這個軟件是收費的。問了下王導打包安裝包使用什么軟件后,王導給我推薦了NSIS,NSIS是一個開源的Windows系統下安裝程序制作程序。提供了安裝、卸載、系統設置、文件解壓縮等功能。NSIS提供了腳本語言來自定義安裝過程。這里僅記錄一些我目前使用到的一些腳本,該軟件提供有幫助文件,很容易查找到自己想要的實現腳本編寫。
這是分享鏈接:NSIS
提取碼:2cg3
NSIS常量
$EXEFILE=install.exe -打包名稱
${NSISDIR}=D:\軟件打包\NSIS2
${WINDIR}=C:\windows
$SYSDIR=C:\windows\system32
$PROGRAMFILES=c:\Program Files (x86)
$PROGRAMFILES32=上同
$PROGRAMFILES64=C:\Program Files
$FONTS=C:\windows\Fonts
$EXEDIR=運行文件所在目錄
$DESKTOP=C:\Users\stdio\Desktop 桌面
提示框
MessageBox MB_OK $EXEDIR
回調函數
安裝回調函數
.onGUIInit
該回調將會在第一個頁面被載入並且顯示安裝程序對話框前被調用,允許你來調整用戶界面。
例子:
Function .onGUIInit
FunctionEnd
.onInit
該回調將會在當安裝程序接近完成初始化時調用。如果在'.onInit'函數調用了Abort,則安裝程序立即退出。
Function .onInit
MessageBox MB_YESNO "即將安裝,繼續?" IDYES NoAbort
Abort ; 安裝程序退出
NoAbort:
FunctionEnd
注冊表讀寫
DeleteRegKey HKLM "Software\My Company\software"
;刪除注冊表鍵值
DeleteRegValue HKLM "Software\soft" "some value"
; 讀取注冊表
ReadRegStr $0 HKLM Software\Nsis ""
; 寫注冊表
WriteRegStr HKLM "Software\soft" "key" "value"