<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    HelloWorld 善戰者,求之于勢,不責于人;故能擇人而任勢。

    知止而后有定,定而后能靜,靜而后能安,安而后能慮,慮而后能得。物有本末,事有終始。知所先后,則近道矣。

      BlogJava :: 首頁 ::  :: 聯系 ::  :: 管理 ::
      167 隨筆 :: 1 文章 :: 40 評論 :: 0 Trackbacks

    NSIS安裝制作基礎教程

    關鍵詞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所示。


      ⑤、在完成添加“漢化說明”,只要在源代碼:
      程序代碼
    ; Finish page


      后添加:
      程序代碼
    !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"


    </script>

    posted on 2008-03-04 13:59 helloworld2008 閱讀(1186) 評論(0)  編輯  收藏 所屬分類: 其他
    主站蜘蛛池模板: 精品无码一级毛片免费视频观看| 免费看小12萝裸体视频国产| 永久免费AV无码国产网站| 精品免费国产一区二区| 国产亚洲综合一区柠檬导航| 日本亚洲色大成网站www久久| jizz免费观看视频| 24小时免费直播在线观看| 亚洲线精品一区二区三区影音先锋| 亚洲午夜在线播放| 日本视频免费高清一本18| 国产精品免费看香蕉| 亚洲小说图片视频| 国产在线精品观看免费观看| 成人最新午夜免费视频| 亚洲AV无码国产丝袜在线观看| 日韩亚洲翔田千里在线| 最近免费中文字幕大全免费 | 1区2区3区产品乱码免费| 亚洲av无码不卡私人影院| 久久精品国产亚洲av麻豆图片| 精品无码一级毛片免费视频观看| 波多野结衣久久高清免费| 久久久久亚洲AV无码永不| 中国videos性高清免费| 四虎国产精品免费视| 亚洲午夜在线播放| 成人午夜免费福利视频| 亚洲成AV人片天堂网无码| caoporn成人免费公开| 四虎1515hm免费国产| 精品久久久久久久久亚洲偷窥女厕| 国产a视频精品免费观看| 亚洲AV色香蕉一区二区| 另类免费视频一区二区在线观看 | 最近中文字幕mv免费高清视频7| 无码乱人伦一区二区亚洲| 两个人的视频www免费| 亚洲中文字幕在线乱码| 高清免费久久午夜精品| 免费一看一级毛片|