生活随笔
收集整理的這篇文章主要介紹了
NSIS使用总结,安装包制作(图解)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
NSIS簡介:
NSIS 是“Nullsoft 腳本安裝系統”(Nullsoft Scriptable Installation System)的縮寫,它是一個免費的 Win32 安裝、卸載系統。它的特點:腳本簡潔高效;系統開銷小;當然進行安裝、卸載、設置系統設置、解壓文件等等更不在話下,幾乎可以做所有的事情。更多的功能請閱讀藍色網際的《NSIS幫助文檔》。
對于制作NSIS的使用教程,藍色網際是NSIS方面的專家,她的《NSIS幫助文檔》就是一本NSIS的圣經,而對初學者來說,最頭疼的莫過于一大堆看不懂的代碼,對他們來說無異于一本天書。緣于此,特草此基礎教程,希望NSIS專家們勿見笑,不當之處歡迎批評指正以期完善,也希望給初學者作個鋪墊。
工具:NIS Edit+Nullsoft Installation System(NSIS)
思路:腳本向導+修改代碼=個性化安裝包
步驟:
一、利用向導制作安裝包
01、安裝上述兩款,啟動NIS Edit,在“文件”菜單中“新建腳本:向導”→下一步”,如圖1。
02、設置應用程序信息,如軟件名稱、版本、出版人等,如圖2。當然最一個網站可以留空,如果設置了,則安裝包會生成一個對應網址的“Internet 快捷方式”。
03、設置程序選項,如安裝包圖標、安裝程序文件、安裝包語言[這里選“SimChinese”]、用戶圖形界面及壓縮方式等,我們可以選用默認值,也可以點擊對應項目的按鈕或下拉菜單更改設置,如圖3。
04、設置安裝目錄及授權信息,如圖4后“下一步”。
05、選定程序文件,即我們要打包的文件,可以使用默認的“Mainsection”,也可以根據需要進行更改或新建組別,如果組比較多時,你也可以設置是否“允許用戶選擇要安裝的組件”,如圖5。
完畢后進行“添加文件”操作,選定我們要打包的文件,如圖6,完成自動后返回的圖5的界面,執行下一步操作。
06、設置開始菜單中文件夾名稱及快捷方式,這里我們使用默認值,如圖7,按“下一步”。
07、指定安裝后要運行的程序,同上用默認值并設置相關運行參數及描述,如果你和我一樣懶的話,或不想在安裝運行任何程序,則留空即可,如圖8。
08、這步是有關卸載程序的相關信息,如卸載時的提示、卸載的圖標等,如圖9。
09、至此完成向導,如圖10,鉤選“保存腳本”、“轉換文件路徑到相關路徑”及“編譯腳本”。
提示保存腳本路徑并自動編譯腳本,我們可以按或F9運行安裝程序進行預覽,向導產生的安裝包效果圖如圖11所示。
二、修改代碼以個性化安裝包
10、選擇可修改之處。軟件LOGO[如圖11A]、安裝包標題[圖11B]、圖11C、圖12、圖13。
圖11見上樓 圖12如下
圖13如下
11、修改代碼
①、修改軟件LOGO:在源代碼“ MUI Settings”后面添加下列代碼:
| 以下是代碼片段: !define?MUI_WELCOMEFINISHPAGE_BITMAP?"G:\temp\?pwr.bmp" |
注釋:引號內為位圖的路徑,位圖大小大約為165*298
效果圖如圖14所示?
②、修改安裝包標題,在同上位置添加下列代碼:
| 以下是代碼片段: !define?MUI_WELCOMEPAGE_TITLE?"\r\n?PDF2all?5.35d?漢化版" |
注釋:\r\n為換行標志
效果圖上樓如圖14所示。
③、修改圖11C中的說明,同上位置添加下列代碼:
| 以下是代碼片段: !define?MUI_WELCOMEPAGE_TEXT?" pdf2all是一個轉換器的集合,它能轉換包括doc2pdf?(Word?to?PDF),xls2pdf?(Excel?Sheet到PDF),ppt2pdf(PowerPoint到PDF),mdb2pdf?(Access到PDF),ps2pdf(PostScript到PDF),pdf2jpg(PDF到JPEG),pdf2bmp(PDF到BMP),pdf2tiff(PDF到TIFF),pdf2eps(PDF到EPS),pdfMerge(合并PDF文件),pdf2ppt(PDF到PowerPoint)。\r\n\r\n 軟件漢化:高芳鑾?(Raindy)\r\n\r\n $_CLICK" |
效果圖如圖14所示。
④、對圖12中的修改,在源代碼:
| 以下是代碼片段: ShowInstDetails?show ShowUnInstDetails?show |
后添加:
| 以下是代碼片段: BrandingText?" 軟件漢化:高芳鑾?(Raindy)" |
效果圖如圖15所示。?
⑤、在完成添加“漢化說明”,只要在源代碼:
后添加:
| 以下是代碼片段: !define?MUI_FINISHPAGE_SHOWREADME?"$INSTDIR\漢化說明.txt" !define?MUI_FINISHPAGE_SHOWREADME_TEXT?"漢化說明" |
效果所示?
⑥、閃屏界面,可以在源代碼中加入下列代碼即可:
A、普通效果
| 以下是代碼片段: Function?.onInit SetOutPath?$TEMP File?/oname=spltmp.bmp?"G:\Temp\Nsisres\splash.bmp"
splash::show?2300?$TEMP\spltmp
Pop?$0
FunctionEnd |
B、漸隱閃屏
| 以下是代碼片段: Function?.OnInit InitPluginsDir File?/oname=$PLUGINSDIR\splash.bmp?"G:\Temp\Nsisres\splash.bmp" advsplash::show?1500?800?600?-1?$PLUGINSDIR\splash Functionend |
⑦、背景音樂[貫穿安裝過程]
| 以下是代碼片段: Var?hmci Function?.OnInit InitPluginsDir SetOutPath?$PLUGINSDIR File?"G:\Temp\Nsisres\music.mp3" [說明:源MP3的存放路徑] System::Call?msvfw32.dll::MCIWndCreate(i?0,?i?0,i?0x0070,?t?"$PLUGINSDIR\music.mp3")?i?.r0 SendMessage?$0?0x0465?0?"STR:play?repeat" System::Call?user32.dll::ShowWindow(i?r0,?i?0) StrCpy?$hmci?$0 Functionend
Section ;add?your?codes SendMessage?$hmci?0x0010?0?0 Sectionend |
后語:
以上僅是NSIS制作安裝包最基本的操作,供初學者入門之用,故云“初級篇”。希望不會怡笑大方,更希望藍MM、陳敏毅老大等NSIS高手的中高級教程。
精品代碼 (^-^)
1、閃屏效果(漸現漸隱)
| 以下是代碼片段: Function?.OnInit InitPluginsDir File?/oname=$PLUGINSDIR\splash.bmp?c:\test.bmp advsplash::show?1500?800?600?-1?$PLUGINSDIR\splash Functionend |
2、背景音樂1(貫穿安裝全過程)
| 以下是代碼片段: Function?.OnInit InitPluginsDir SetOutPath?$PLUGINSDIR File?"c:\a.mp3" System::Call?msvfw32.dll::MCIWndCreate(i?0,?i?0,i?0x0070,?t?"$PLUGINSDIR\a.mp3")?i?.r0 SendMessage?$0?0x0465?0?"STR:play?repeat" System::Call?user32.dll::ShowWindow(i?r0,?i?0) StrCpy?$hmci?$0 Functionend
Section ;add?your?codes SendMessage?$hmci?0x0010?0?0 Sectionend |
3、背景音樂2
| 以下是代碼片段: Section/Function SetOutPath?$PLUGINSDIR File?$WINDIR\MEDIA\chimes.wav BgImage::Sound?/NOUNLOAD?/WAIT?"$PLUGINSDIR\chimes.wav" BgImage::Clear?/NOUNLOAD Sectionend/Functionend |
4、閃屏效果[漸隱]+背景音樂[全程]
| 以下是代碼片段: outfile?test.exe Var?hmci
Function?.OnInit InitPluginsDir SetOutPath?$PLUGINSDIR File?"c:\a.mp3" System::Call?msvfw32.dll::MCIWndCreate(i?0,?i?0,i?0x0070,?t?"$PLUGINSDIR\a.mp3")?i?.r0 SendMessage?$0?0x0465?0?"STR:play?repeat" System::Call?user32.dll::ShowWindow(i?r0,?i?0) StrCpy?$hmci?$0
File?/oname=$PLUGINSDIR\splash.bmp?c:\test.bmp advsplash::show?1500?800?600?-1?$PLUGINSDIR\splash
Functionend
Section ;add?your?codes sleep?5000 SendMessage?$hmci?0x0010?0?0 Sectionend |
5、如何把安裝頁面中的“Setup將安裝……”中的Setup改成別的字
只需在
| 以下是代碼片段: !insertmacro?MUI_PAGE_DIRECTORY |
前面添加一行
| 以下是代碼片段: !define?MUI_DIRECTORYPAGE_TEXT_TOP?"你需要的文字" |
6、設置了自定義安裝、卸載圖標
| 以下是代碼片段: !define?MUI_ICON?"G:\Temp\Nsisres\Win?安裝.ico" !define?MUI_UNICON?"G:\Temp\Nsisres\Win?卸載.ico" |
?
總結
以上是生活随笔為你收集整理的NSIS使用总结,安装包制作(图解)的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。