用nsis軟體製作安裝包時總會用到那麼幾個常用的**,正因為常用到,自己腦袋又不好記不住,所以就一一記錄下來,時間一長自然也就成好多條了,貼出來與大家分享一下吧。
1.如何執行乙個批處理檔案 .bat
注:xiaojian.bat為你的檔名
execwait "xiaojian.bat"
不顯示黑框框
n***ec::exec "xiaojian.bat"
2.如何執行乙個vbs檔案 .vbs
注:xiaojian.vbs為你的檔名
execwait '"$sysdir\cscript.exe" "xiaojian.vbs"'
不顯示黑框框
n***ec::exec '"$sysdir\cscript.exe" "xiaojian.vbs"'
3.如何執行乙個登錄檔檔案 .reg
注:xiaojian.reg為你的檔名
execwait "regedit.exe /s xiaojian.reg"
另外直接寫入登錄檔
writeregstr
writeregexpandstr
writeregdword
writeregbin
比如:writeregdword hkcu "software\es-computing\xiaojian\install" "eula" '0x00000001"
請看nsis詳細說明
4.如何執行乙個安裝檔案 .inf
注:xiaojian.inf 為你的檔名
execwait "rundll32 advpack.dll,launchinfsection xiaojian.inf,defaultinstall"
5.如何執行乙個安裝檔案 .msi
注:xiaojian.msi為你的檔名
execwait `msiexec /qn /i "xiaojian.msi"`
6.關聯檔案圖示後,圖示沒變化。
重新整理圖示
'system::call shell32.dll::shchangenotify(l, l, i, i) v (0x08000000, 0, 0, 0)'
7.安裝窗體變窄了。
setfont /lang=2052 "tahoma" 8
xp特殊資料夾的位置:
hkcu "software\microsoft\windows\currentversion\explorer\user shell folders"
安裝硬碟上的字型(**插入function,section內):
strcpy $0 "d:\fonts\chs\經典空趣體繁.ttf"
writeregstr hklm "software\microsoft\windows nt\currentversion\fonts" "經典空趣體繁(truetype)" "$0"
system::call "gdi32::addfontresource(t) i ('$0') .s"
在經典模式下使用中文介面(**插入檔案頭):
loadlanguagefile "$\contrib\language files\simpchinese.nlf"
langstring name 2052 "simplified chinese"
#-- 根據 nsis 指令碼編輯規則,所有 function 區段必須放置在 section 區段之後編寫,以避免安裝程式出現未可預知的問題。--#
;解除安裝程式之前
function un.oninit
messagebox mb_iconquestion|mb_yesno|mb_defbutton2 "你確實要完全移除 $(^name) ,及其所有的元件?" idyes +2
abort
;執行批處理檔案
execshell open "$instdir\rege\unreguac.bat" "" sw_hide
;execshell open "sdbinst /u *.sdb" "" sw_hide
functionend
function un.onuninstsuccess
hidewindow
messagebox mb_iconinformation|mb_ok "$(^name) 已成功地從你的計算機移除。"
functionend
;安裝結束後,執行批處理檔案
function .oninstsuccess
;execshell open "$instdir\rege\reguac.bat" "" sw_hide
;execshell open "sdbinst /q *.sdb" "" sw_hide
;execwait "sdbinst /q *.sdb"
;execshell open 'cmd' '/c "sdbinst /q *.sdb"' sw_hide
execshell open 'cmd' '/k "sdbinst /q *.sdb"' sw_shownormal
functionend
NSIS安裝包製作流程
參考 開始建立安裝模板 輸入相關係資訊 設定安裝程式的圖示等資訊 設定使用者安裝目錄,此處的授權檔案要改,否則找不到檔案報錯。新增檔案 新建組之類的,主要是為了使用者選擇安裝元件的過程可選,這裡要注意一下,當檔案數過多的時候,還是用組的形式好一些,要不然軟體一直卡死。著重注意一下,目的目錄一定一定要...
NSIS程式安裝包製作
啟動nsis程式主介面,選擇 視覺化指令碼編輯器 vnisedit 選單,開始製作自己的安裝包 選擇 使用指令碼嚮導建立新的指令碼檔案 確定 進步指令碼嚮導,下一步 第一步,這裡填寫應用程式的一些基本資訊,下一步 第二步,這裡是選擇安裝包的圖示,生成的檔名,程式語言等,使用預設的就可以,不需要修改 ...
使用NSIS製作安裝包 2
乙個完整的安裝應用程式的指令碼。include mui.nsh define mui abortwarning define mui icon contrib graphics icons orange install nsis.ico define mui unicon contrib graph...