您好,欢迎访问三七文档
NSIS使用教程上一篇/下一篇2006-09-0620:36:24/天气:阴雨/心情:平静/个人分类:学习查看(1307)/评论(1)/评分(0/0)NSIS简介:NSIS是“Nullsoft脚本安装系统”(NullsoftscrīptableInstallationSystem)的缩写,它是一个免费的Win32安装、卸载系统,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。更多的功能请阅读蓝色网际的《NSIS帮助文档》。对于制作NSIS的使用教程,蓝色网际是NSIS方面的专家,她的《NSIS帮助文档》就是一本NSIS的圣经,而对初学者来说,最头疼的莫过于一大堆看不懂的代码,对他们来说无异于一本天书。缘于此,特草此基础教程,希望NSIS专家们勿见笑,不当之处欢迎批评指正以期完善,也希望给初学者作个铺垫。工具:NISEdit+NullsoftInstallationSystem(NSIS)[此两款软件都可以到世纪主站上下载到]思路:脚本向导+修改代码=个性化安装包步骤:I.利用向导制作安装包:1.安装上述两款,启动NISEdit,在“文件”菜单中“新建脚本:向导”=下一步”,如图1:附图2.设置应用程序信息,如软件名称、版本、出版人等,如图2。当然最一个网站可以留空,如果设置了,则安装包会生成一个对应网址的“Internet快捷方式”。附图3.设置程序选项,如安装包图标、安装程序文件、安装包语言[这里选“SimChinese”]、用户图形界面及压缩方式等,我们可以选用默认值,也可以点击对应项目的按钮或下拉菜单更改设置,如下图3附图4.设置安装目录及授权信息,如图4后“下一步”:附图5.选定程序文件,即我们要打包的文件,可以使用默认的“Mainsection”,也可以根据需要进行更改或新建组别,如果组比较多时,你也可以设置是否“允许用户选择要安装的组件”,如图5。附图完毕后进行“添加文件”操作,选定我们要打包的文件,如图6,完成自动后返回的图5的界面,执行下一步操作。图6.设置开始菜单中文件夹名称及快捷方式,这里我们使用默认值,如图7,按“下一步”:附图7.指定安装后要运行的程序,同上用默认值并设置相关运行参数及描述,如果你和我一样懒的话,或不想在安装运行任何程序,则留空即可,如图8:附图8.这步是有关卸载程序的相关信息,如卸载时的提示、卸载的图标等,如图9附图9.至此完成向导,如图10,,钩选“保存脚本”、“转换文件路径到相关路径”及“编译脚本”附图提示保存脚本路径并自动编译脚本,我们可以按或F9运行安装程序进行预览,向导产生的安装包效果图如图11所示:附图II.修改代码以个性化安装包:10.选择可修改之处:1)软件LOGO[如图11A]、安装包标题[图11B]、图11C、图12、图13图11见上楼图12如下附图图13如下附图2)闪屏界面11.修改代码1)修改软件LOGO:在源代码“MUISettings”后面添加下列代码:以下是代码片段:!defineMUI_WELCOMEFINISHPAGE_BITMAPG:\temp\pwr.bmp注释:引号内为位图的路径,位图大小大约为165*298效果图如图14所示附图2)修改安装包标题,在同上位置添加下列代码:以下是代码片段:!defineMUI_WELCOMEPAGE_TITLE\r\nPDF2all5.35d汉化版注释:\r\n为换行标志效果图上楼如图14所示3)修改图11C中的说明,同上位置添加下列代码:以下是代码片段:!defineMUI_WELCOMEPAGE_TEXTpdf2all是一个转换器的集合,它能转换包括doc2pdf(WordtoPDF),xls2pdf(ExcelSheet到PDF),ppt2pdf(PowerPoint到PDF),mdb2pdf(Access到PDF),ps2pdf(Postscrīpt到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所示4)对图12中的修改,在源代码:以下是代码片段:ShowInstDetailsshowShowUnInstDetailsshow后添加:以下是代码片段:BrandingText软件汉化:高芳銮(Raindy)效果图如图15所示附图5)在完成添加“汉化说明”,只要在源代码:以下是代码片段:;Finishpage后添加:以下是代码片段:!defineMUI_FINISHPAGE_SHOWREADME$INSTDIR\汉化说明.txt!defineMUI_FINISHPAGE_SHOWREADME_TEXT汉化说明效果所示附图6)闪屏界面,可以在源代码中加入下列代码即可:A、普通效果以下是代码片段:Function.onInitSetOutPath$TEMPFile/oname=spltmp.bmpG:\Temp\Nsisres\splash.bmpsplash::show2300$TEMP\spltmpPop$0FunctionEnd效果图如此软件下载:pdf2all-setup.rarB、渐隐闪屏以下是代码片段:Function.OnInitInitPluginsDirFile/oname=$PLUGINSDIR\splash.bmpG:\Temp\Nsisres\splash.bmpadvsplash::show1500800600-1$PLUGINSDIR\splashFunctionend7)背景音乐[贯穿安装过程]以下是代码片段:VarhmciFunction.OnInitInitPluginsDirSetOutPath$PLUGINSDIRFileG:\Temp\Nsisres\music.mp3[说明:源MP3的存放路径]System::Callmsvfw32.dll::MCIWndCreate(i0,i0,i0x0070,t$PLUGINSDIR\music.mp3)i.r0SendMessage$00x04650STR:playrepeatSystem::Calluser32.dll::ShowWindow(ir0,i0)StrCpy$hmci$0FunctionendSection;addyourcodesSendMessage$hmci0x001000Sectionend后语:以上仅是NSIS制作安装包最基本的操作,供初学者入门之用,故云“初级篇”。希望不会怡笑大方,更希望蓝MM、陈敏毅老大等NSIS高手的中高级教程:)相关资料下载[以Pdf2allV5.35d为例,可直接点击下载]全文的Word文档附在附件中NSIS.rar偶以Pdf2allV5.35d为例,制作了安装包制作动画演示[可直接点击下载]相关文件列表如下:动画演示[pdf2all-movie.exe]安装包的NSIS脚本代码[PDF2all-nsis.nsi.txt]成品的安装包[pdf2all-setup.exe]常见修改的代码[code.txt]NSIS基础教程CHM版[NSIS安装制作基础教程(CHM格式)-特别感谢tracky]感谢chenmy老大提供空间:)偶的闪屏图:附图下面摘引一些论坛的讨论,原帖点击进入:dujuan509渐现渐隐的代码:以下是代码片段:Function.OnInitInitPluginsDirFile/oname=$PLUGINSDIR\splash.bmpc:\test.bmpadvsplash::show1500800600-1$PLUGINSDIR\splashFunctionend背景音乐(贯穿安装全过程):以下是代码片段:Function.OnInitInitPluginsDirSetOutPath$PLUGINSDIRFilec:\a.mp3System::Callmsvfw32.dll::MCIWndCreate(i0,i0,i0x0070,t$PLUGINSDIR\a.mp3)i.r0SendMessage$00x04650STR:playrepeatSystem::Calluser32.dll::ShowWindow(ir0,i0)StrCpy$hmci$0FunctionendSection;addyourcodesSendMessage$hmci0x001000Sectionend背景音乐2:以下是代码片段:Section/FunctionSetOutPath$PLUGINSDIRFile$WINDIR\MEDIA\chimes.wavBgImage::Sound/NOUNLOAD/WAIT$PLUGINSDIR\chimes.wavBgImage::Clear/NOUNLOADSectionend/Functionend最后一种方法使用了bgimage插件,安装程序执行到该插件时会等待wav播放完再继续执行。raindy谢谢dujuan509兄如果闪屏效果[渐隐]+背景音乐[全程]放在一起那代码该如何修改?偶两者无法兼得望不吝赐教dujuan509以下是代码片段:outfiletest.exeVarhmciFunction.OnInitInitPluginsDirSetOutPath$PLUGINSDIRFilec:\a.mp3System::Callmsvfw32.dll::MCIWndCreate(i0,i0,i0x0070,t$PLUGINSDIR\a.mp3)i.r0SendMessage$00x04650STR:playrepeatSystem::Calluser32.dll::ShowWindow(ir0,i0)StrCpy$hmci$0File/oname=$PLUGINSDIR\splash.bmpc:\test.bmpadvsplash::show1500800600-1$PLUGINSDIR\splashFunctionendSection;addyourcodessleep5000SendMessage$hmci0x001000Sectionendraindy谢谢dujuan509兄已经学会了:)可惜背景音乐只能支持MP3格式如果能支持midi等就好了蓝色网际MIDI请参考这个DEMO附件midi.zip蓝色网际推荐一个NSIS的快速编辑器-NotePad2。虽然不是NSIS专门编辑器不过有时候比Venis方便,因为Venis不支持文本块操作,而且Venis对语法高亮做得不是很好。NotePad2的语法高亮是根据后缀名来确定的,只要你打开NSI文件不用任何设置就会自动语法高亮。其实NotePad2作为记事本替代者也非常不过,界面非常相似,而NotePad2功能强大了好多。你可以在下载我修改的版本,主要补全了NSIS语法高亮,原版由于很久没更新NSIS的语法高亮代码,所以有一些新增的NSIS指令不能高亮显示。并作了一些优化,做要是让它更像记事本贴个图:附图dujuan509引用(zkdpower@2005年01月25日23时08分)我想问一下各位,如何把安装页面中的“Setup将安装……”中的Setup改成别的字你指的是选择安装目录页面的提示文字吧?只需在以下是代码片段:!insertmacroMUI_PAGE_DIRECTORY前面添加一行:以下是代码片段:!defineMUI_DIRECTORYPAGE_TEXT_TOP你需要的文字蓝色网际引用(zjj1988101@2005年01月26日09时49分)引用(蓝色网际@2005年01月26日09时03分)用NSIS2.03的吧,那个版本简体语言符合我们的习惯。请教
本文标题:NSIS使用教程档
链接地址:https://www.777doc.com/doc-3995325 .html