设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 7417|回复: 21
打印 上一主题 下一主题

[周边工具] Nullsoft 脚本安装系统

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
86 小时
注册时间
2011-2-2
帖子
55
跳转到指定楼层
1
发表于 2011-6-26 16:35:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 chg1998 于 2012-1-15 21:00 编辑

       简介  NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptable Installation System)的缩写,它是一个免费的 Win32 安装、卸载系统。它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。更多的功能请阅读蓝色网际的《NSIS用户手册》。

  对于制作NSIS的使用教程,蓝色网际是NSIS方面的专家,她的《NSIS用户手册》就是一本NSIS的圣经,而对初学者来说,最头疼的莫过于一大堆看不懂的代码,对他们来说无异于一本天书。缘于此,特草此基础教程,希望NSIS专家们勿见笑,不当之处欢迎批评指正以期完善,也希望给初学者作个铺垫。

  工具
  HM VNISEdit+NSIS,推荐使用蓝色网际制作的NSISv2.11简体中文增强版。
    附件:http://u.115.com/file/bhb7qpib#
  思路

  脚本向导+修改代码=个性化安装包

  步骤
  一、利用向导制作安装包
    点击编译器的脚本编辑器在继续:  01、安装NSISv2.11简体中文增强版便已包含上述两款软件。安装完成后启动HM VNISEdit,选择“文件”菜单中“新建脚本:向导”,如图:



  02、在弹出的“NSIS脚本向导”对话框中单击“下一步”按钮,如图:



  03、设置应用程序信息,如软件名称、版本、出版人等。当然最后一个网站可以留空,如果设置了,则安装包会生成一个对应网址的“Internet 快捷方式”。如图:



  04、设置程序选项,如安装包图标、安装程序文件、安装包语言[这里选“SimChinese”]、用户图形界面及压缩方式等,我们可以选用默认值,也可以点击对应项目的按钮或下拉菜单更改设置,如图:



  05、设置是否使用“闪屏”和“音乐”效果,如图:



  06、设置应用程序默认安装目录及授权信息,授权文件建议使用.txt或。rtf格式。如图:



  07、添加应用程序文件,即我们要打包的文件,可以使用默认的“Mainsection”,也可以根据需要进行更改或新建组别,如果组比较多时,你也可以设置是否“允许用户选择要安装的组件”,如图:



  完毕后进行“添加文件”操作,选定我们要打包的文件,如图:



  全部添加完成后返回下图界面,执行下一步操作。



  08、设置开始菜单中文件夹名称及快捷方式,这里我们使用默认值,如图,按“下一步”。



  09、指定安装后要运行的程序,同上用默认值并设置相关运行参数及描述,如果你和我一样懒的话,或不想在安装后运行任何程序,则留空即可,如图:



  10、这步是有关卸载程序的相关信息,如卸载时的提示、卸载的图标等,如图:



  09、至此完成向导,如图,钩选“保存脚本”、“转换文件路径到相关路径”及“编译脚本”。



  提示保存脚本路径并自动编译脚本,我们可以按或F9运行安装程序进行预览,向导产生的安装包效果图如图11部分所示。



  二、修改代码以个性化安装包

  10、修改软件LOGO:

  在源代码
  1. ; MUI 预定义常量
  2. !define MUI_ABORTWARNING
  3. !define MUI_ICON "${NSISDIR}\Contrib\Graphics\Icons\orange-install.ico"
  4. !define MUI_UNICON "${NSISDIR}\Contrib\Graphics\Icons\orange-uninstall.ico"
复制代码
  
    下面添加下列代码:
  1. !define MUI_WELCOMEFINISHPAGE_BITMAP "E:\其他\我的文档\轻狂程序\flibpoto\flibpoto.bmp"
复制代码
  
    注释:引号内为位图的路径,位图大小大约为165*298

  效果如图:



  11、修改安装包标题:

  接着在上面的位置下面添加如下代码:
  1. !define MUI_WELCOMEPAGE_TITLE "\r\n   轻狂图片浏览器v1.0安装向导"
复制代码
  注释:\r\n为换行标志

  效果如图:



  12、修改软件说明,接着在上面的位置下面添加如下代码:
  1. !define MUI_WELCOMEPAGE_TEXT "  轻狂图片浏览器是少轻狂开发的一个图片浏览编辑软件,能够方便地查看并编辑图片文件。\r\n\r\n  软件作者:少轻狂\r\n\r\n  官方网址:www.flighty.cn\r\n\r\n  $_CLICK" 
复制代码
 
    效果如图:




  13、在源代码:
  1. ShowInstDetails show
  2. ShowUnInstDetails show
复制代码
  后添加:
  1. BrandingText " 轻狂编程资源网 [url]www.flighty.cn[/url]"
复制代码
  效果如图:



  14、在完成页面添加“安装说明”:

  只要在源代码:
  1. ; MUI 预定义常量
复制代码
  下面添加:
  1. !define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\安装说明.txt"
  2. !define MUI_FINISHPAGE_SHOWREADME_TEXT "查看 安装说明"
复制代码
  效果如图:



  15、闪屏界面,可以在源代码中加入下列代码即可:

  A、普通效果
  1. Function .onInit
  2. SetOutPath $TEMP
  3. File /oname=spltmp.bmp "G:\Temp\Nsisres\splash.bmp"

  4. splash::show 2300 $TEMP\spltmp

  5. Pop $0

  6. FunctionEnd
复制代码
  
B、渐隐闪屏
  1. Function .OnInit
  2. InitPluginsDir
  3. File /oname=$PLUGINSDIR\splash.bmp "G:\Temp\Nsisres\splash.bmp"
  4. advsplash::show 1500 800 600 -1 $PLUGINSDIR\splash
  5. Functionend
复制代码
  
16、背景音乐[贯穿安装过程]
  1. Var hmci
  2. Function .OnInit
  3. InitPluginsDir
  4. SetOutPath $PLUGINSDIR
  5. File "G:\Temp\Nsisres\music.mp3"  [说明:源MP3的存放路径]
  6. System::Call msvfw32.dll::MCIWndCreate(i 0, i 0,i 0x0070, t "$PLUGINSDIR\music.mp3") i .r0
  7. SendMessage $0 0x0465 0 "STR:play repeat"
  8. System::Call user32.dll::ShowWindow(i r0, i 0)
  9. StrCpy $hmci $0
  10. Functionend

  11. Section
  12. ;add your codes
  13. SendMessage $hmci 0x0010 0 0
  14. Sectionend
复制代码
  
  后语
  以上仅是NSIS制作安装包最基本的操作,供初学者入门之用,故云“初级篇”。希望不会怡笑大方,更希望蓝MM、陈敏毅老大等NSIS高手的中高级教程。

  附录

  仅一些精品代码。

  1、闪屏效果(渐现渐隐)
  1. Function .OnInit
  2. InitPluginsDir
  3. File /oname=$PLUGINSDIR\splash.bmp c:\test.bmp
  4. advsplash::show 1500 800 600 -1 $PLUGINSDIR\splash
  5. Functionend
复制代码
  
2、背景音乐1(贯穿安装全过程)
  1. Function .OnInit
  2. InitPluginsDir
  3. SetOutPath $PLUGINSDIR
  4. File "c:\a.mp3"
  5. System::Call msvfw32.dll::MCIWndCreate(i 0, i 0,i 0x0070, t "$PLUGINSDIR\a.mp3") i .r0
  6. SendMessage $0 0x0465 0 "STR:play repeat"
  7. System::Call user32.dll::ShowWindow(i r0, i 0)
  8. StrCpy $hmci $0
  9. Functionend

  10. Section
  11. ;add your codes
  12. SendMessage $hmci 0x0010 0 0
  13. Sectionend
复制代码
  
3、背景音乐2
  1. Section/Function
  2. SetOutPath $PLUGINSDIR
  3. File $WINDIR\MEDIA\chimes.wav
  4. BgImage::Sound /NOUNLOAD /WAIT "$PLUGINSDIR\chimes.wav"
  5. BgImage::Clear /NOUNLOAD
  6. Sectionend/Functionend
复制代码
  
4、闪屏效果[渐隐]+背景音乐[全程]
  1. outfile test.exe
  2. Var hmci

  3. Function .OnInit
  4. InitPluginsDir
  5. SetOutPath $PLUGINSDIR
  6. File "c:\a.mp3"
  7. System::Call msvfw32.dll::MCIWndCreate(i 0, i 0,i 0x0070, t "$PLUGINSDIR\a.mp3") i .r0
  8. SendMessage $0 0x0465 0 "STR:play repeat"
  9. System::Call user32.dll::ShowWindow(i r0, i 0)
  10. StrCpy $hmci $0

  11. File /oname=$PLUGINSDIR\splash.bmp c:\test.bmp
  12. advsplash::show 1500 800 600 -1 $PLUGINSDIR\splash

  13. Functionend

  14. Section
  15. ;add your codes
  16. sleep 5000
  17. SendMessage $hmci 0x0010 0 0
  18. Sectionend
复制代码
  
5、如何把安装页面中的“Setup将安装……”中的Setup改成别的字

  只需在
  1. !insertmacro MUI_PAGE_DIRECTORY
复制代码
  前面添加一行
  1. !define MUI_DIRECTORYPAGE_TEXT_TOP "你需要的文字"
复制代码
  6、设置了自定义安装、卸载图标
  1. !define MUI_ICON "G:\Temp\Nsisres\Win 安装.ico"
  2. !define MUI_UNICON "G:\Temp\Nsisres\Win 卸载.ico"
复制代码
 

  你可以点击此处下载轻狂图片浏览器打包资源文件。

 

    备注:此教程由少轻狂收集于网络并添加修改了部分内容制作成CHM文档,以便于网络分发。如果您有更好的意见或建议,请与少轻狂联系:www.flighty.cn      [email protected]

    又注:此文原作者  高芳銮 (raindy)




另见其他教程:http://u.115.com/file/e60nd4ji#




本文件为转载   我也不懂只是感到有趣 好玩才转上来的。

Lv1.梦旅人

梦石
0
星屑
50
在线时间
444 小时
注册时间
2011-1-3
帖子
151

开拓者

2
发表于 2011-6-26 17:33:30 | 只看该作者
貌似看起来很不错啊.......比MoleBox Pro打包文件多了很多方便的东西........
回复 支持 反对

使用道具 举报

Lv1.梦旅人

王牌

梦石
0
星屑
50
在线时间
188 小时
注册时间
2011-5-16
帖子
224
3
发表于 2011-6-26 17:46:34 | 只看该作者
楼主成功过吗?

点评

呵呵,无视我的回复,我看成可以安装成网游了……一笑而过  发表于 2011-6-26 17:53
      
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
86 小时
注册时间
2011-2-2
帖子
55
4
 楼主| 发表于 2011-6-26 18:01:39 | 只看该作者
乏味— 发表于 2011-6-26 17:46
楼主成功过吗?

成功过啊!不成功敢发吗?那个就是试了个简单的,加图的还没那!
回复 支持 反对

使用道具 举报

Lv1.梦旅人

王牌

梦石
0
星屑
50
在线时间
188 小时
注册时间
2011-5-16
帖子
224
5
发表于 2011-6-26 18:06:58 | 只看该作者
这啥毛病?


乏味—于2011-6-26 18:19补充以下内容:
哈?怎么?


乏味—于2011-6-26 18:20补充以下内容:
[attachimg]61166[/attachimg]这个?

QQ截图未命名.png (29.9 KB, 下载次数: 22)

QQ截图未命名.png

点评

俺看不见!!  发表于 2011-6-26 18:34
      
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
86 小时
注册时间
2011-2-2
帖子
55
6
 楼主| 发表于 2011-6-26 18:38:35 | 只看该作者
乏味— 发表于 2011-6-26 18:06
这啥毛病?

看见了,点击编译器的第二个脚本编辑器!!!
回复 支持 反对

使用道具 举报

Lv4.逐梦者

醉啸 长风万里

梦石
0
星屑
6157
在线时间
6592 小时
注册时间
2007-12-16
帖子
4501

贵宾

7
发表于 2011-6-26 19:16:17 | 只看该作者
这个MS发到地球村更合适些,不过我学到了

还在龟速填坑中
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
24 小时
注册时间
2011-6-20
帖子
22
8
发表于 2011-6-26 22:01:14 | 只看该作者
好像很厉害的样子,有空试试。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

王牌

梦石
0
星屑
50
在线时间
188 小时
注册时间
2011-5-16
帖子
224
9
发表于 2011-6-27 12:10:27 | 只看该作者
感谢楼主,终于弄懂了!好东西,应该放到地球村
      
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
49
在线时间
120 小时
注册时间
2010-4-11
帖子
334
10
发表于 2011-6-27 12:28:33 | 只看该作者
这东西 有点小麻烦= =
小球獭是最萌的水獭!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-5 18:41

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表