NSIS使用详解(图文详解版)
NSIS用户手册
![NSIS用户手册](https://img.taocdn.com/s3/m/2dfc9baf1b37f111f18583d049649b6648d709f7.png)
NSIS⽤户⼿册NSIS(Nullsoft Scriptable Install System)是⼀个供程序员使⽤的、建⽴Windows installers的⼯具。
它的发布遵守开源许可,且完全免费使⽤。
脚本⽂件要利⽤NSIS制作安装包,你必须编写NSIS脚本,NSIS脚本是⼀些简单语法规则的⽂本。
NSIS脚本的每⼀⾏都是命令。
若命令很长,可以⽤'/'来换⾏写,类似VC⾥⾯写很长的字符串。
例如:Messagebox MB_OK|MB_ICONINFORMATION /"This is a sample that shows how to use line breaks for larger commands in NSIS scripts"如果要在字符串⾥⾯加⼊双引号,可以这样写:$/",或者⽤单引号代替。
脚本⽂件的扩展名是nsi,脚本头⽂件是nsh。
可以分成多个头⽂件来组织脚本⽂件,⽤下⾯的⽅法来包含头⽂件:!include Sections.nsh脚本结构脚本⽂件⼀般包含“Install Attributes”、“Pages”、“Sections”、“Functions”这⼏部分。
Install Attributes,定义了⼀些常量,如安装⽂件名、安装路径等。
Pages,定义授权书页,⽬录选择页,组件选择页,反安装页等等。
Sections,把安装进程分成多个阶段来定义,⽅便操作。
Functions,定义⼀些函数,在安装时进⾏⽤户交互。
脚本格式Commands命令⾏是这样的形式 'command [parameters]'File "myfile"Comments以;或#开始的⾏被认为是注释⾏,你可以在命令⾏后放注释,也可以使⽤c风格的注释。
; Comment# Comment/*CommentComment*/File "myfile" ; Comment如果你需要以;或#作为参数,你应把他们放在引号⾥⾯。
nsis使用方法
![nsis使用方法](https://img.taocdn.com/s3/m/90b4d405bf1e650e52ea551810a6f524ccbfcbad.png)
nsis使用方法NSIS(Nullsoft Scriptable Install System)是一种用于创建Windows安装程序的开源脚本语言。
它提供了许多功能,使开发人员能够定制化安装过程,包括创建目录、复制文件、创建快捷方式等。
下面将介绍NSIS的使用方法,帮助开发人员快速上手。
我们需要安装NSIS。
在NSIS官方网站上下载最新版本的安装程序,并按照提示进行安装。
安装完成后,我们可以在开始菜单中找到NSIS的相关工具。
NSIS使用一种类似于C语言的脚本语言来编写安装程序。
我们可以使用任何文本编辑器来创建NSIS脚本文件,文件的扩展名通常为.nsi。
在脚本文件的开头,我们需要使用`!define`指令来定义一些常量,如安装路径等。
接下来,我们可以使用`Section`指令来定义安装程序的各个部分。
每个部分可以包含一组操作,如创建目录、复制文件等。
我们可以使用适当的标题来描述每个部分的功能。
在每个部分中,我们可以使用各种指令来执行特定的操作。
例如,使用`SetOutPath`指令来设置文件的输出路径,使用`File`指令来复制文件,使用`CreateShortcut`指令来创建快捷方式等。
这些指令可以根据实际需求进行灵活配置。
除了基本的文件操作,NSIS还提供了一些高级功能,如注册表操作、启动应用程序等。
我们可以使用`WriteRegStr`指令来写入注册表,使用`Exec`指令来执行外部程序等。
在脚本文件的末尾,我们可以使用`SectionEnd`指令来结束每个部分的定义。
最后,使用`SectionGroup`指令可以将多个部分组合在一起,以实现更复杂的安装逻辑。
完成脚本文件的编写后,我们可以使用NSIS提供的编译器来将脚本文件编译成可执行的安装程序。
编译后的安装程序可以在Windows 系统上运行,并按照脚本文件中定义的操作进行安装。
NSIS是一个功能强大的工具,可以帮助开发人员快速创建Windows 安装程序。
NSIS基础教程衿华版第一卷
![NSIS基础教程衿华版第一卷](https://img.taocdn.com/s3/m/9aa02ae25ef7ba0d4a733b44.png)
上一页 | 目录 | 下一页NSIS基础教程衿华版第一卷NSIS 可以创建安装程序,卸载程序,对系统进行设置,执行外部文件,等等。
因为NSIS 是基于脚本文件的,你可以方便的制作简单安装包或复杂的高级安装包。
NSIS具有体积小,编译速度快,效率高的特点,编译原生所需大小仅为34KB 支持主流平台,并且平台的兼容性好,如$PROGRAMFILES可以自动处理32位与64位目录差异。
独特的压缩方式,如SetCompressor /SOLID lzma固实压缩。
基于脚本的特性可以方便的对文件进行随时更改,灵活简单。
NSIS生成程序必须代码#安装程序名称OutFil "Installer.exe"#区段,NSIS代码里至少需要一个,区段在安装页面执行Section ""SectionEnd弹出窗口OutFile "MessageBox.exe"ShowInstDetails showSection ""DetailPrint "Hello World!"MessageBox MB_OK "Hello World!"SectionEnd搜索当前目录下所有.txt文件里,输出包含"nsis"字符串的文件名!include "LogicLib.nsh"!include "WordFunc.nsh"OutFile "FileOption.exe"SetFont /LANG=2052 "宋体" 12ShowInstDetails show #1016 InformationSection ""#SetAutoClose true #instpage autocloseDetailPrint "#Open File and write string into file" FileOpen $0 "$EXEDIR\FileOption.txt" wFileWrite $0 "Where there is a will there is a way!$\r$\n"FileClose $0DetailPrint "#Open file with add mode"FileOpen $0 "$EXEDIR\FileOption.txt" aFileWrite $0 "Never put off till tomorrow what may be done today!$\r$\n"FileClose $0DetailPrint "#You will find the string had overwrite,so you must seek end of file"FileOpen $0 "$EXEDIR\FileOption.txt" aFileSeek $0 0 ENDFileWrite $0 "String append into file$\r$\n"FileClose $0DetailPrint "#Read file string,note: must less than 1024byte"FileOpen $0 "$EXEDIR\FileOption.txt" r${Do}FileRead $0 $1DetailPrint $1${LoopWhile} $1 != ""/*#you can also do like this.${Do}FileRead $0 $1DetailPrint $1${If} $1 == ""${ExitDo}${EndIf}${Loop}*/DetailPrint "#List file name and echo"FindFirst $0 $1 "$EXEDIR\*.txt"${While} $1 != ""DetailPrint $1FindNext $0 $1${EndWhile}DetailPrint ""#搜索当前目录下所有.txt文件里,输出包含"nsis"字符串的文件名 FindFirst $0 $1 "$EXEDIR\*.txt"${While} $1 != ""#DetailPrint $1FileOpen $3 "$EXEDIR\$1" r${Do}FileRead $3 $4#DetailPrint $4${WordFind} $4 "nsis" "*" $R0${If} $R0 > 0DetailPrint "#Find string $\"nsis$\" in this file $1#" ${ExitDo}${EndIf}${LoopWhile} $4 != ""FindNext $0 $1${EndWhile}SectionEnd简单制作安装程序桌面快捷方式和开始菜单和快速启动栏和任务栏#Simply install a file!include "WinVer.nsh"; EXE 主程序名!define PRODUCT_EXENAME "pythonschool.exe"; 产品要安装的路径 $INSTDIR 的值!define PRODUCT_INSTNAME "PythonSchool"; 产品名称!define PRODUCT_NAME "Python丝酷"OutFile "simpleinstall.exe"# define the directory to install to,# $DESKTOP are the same as "c:\users\administrator\desktop" like Windows 7 InstallDir "$DESKTOP"Section ""#SetAutoClose true# define the output path for this file# The "$INSTDIR"'s value is defind by InstallDir,# you can change like this: StrCpy $INSTDIR "C:\Program files\pythonschool" SetOutPath "$INSTDIR"File /r "*.txt"# define uninstaller name# use this sentence will made a uninstaller.exe file in "$INSTDIR"WriteUninstaller "$INSTDIR\uninst.exe"SectionEndSection "桌面快捷方式" Sec_Desktop#InitPluginsDir#CreateShortCut "$PLUGINSDIR\${PRODUCT_INSTNAME}.lnk" "$INSTDIR\${PRODUCT_EXENAME}"#Rename /REBOOTOK "$PLUGINSDIR\${PRODUCT_INSTNAME}.lnk" "$DESKTOP\${PRODUCT_INSTNAME}.lnk"CreateShortCut "$DESKTOP\${PRODUCT_INSTNAME}.lnk" "$INSTDIR\${PRODUCT_EXENAME}"SectionEndSection /o "快速启动栏" Sec_QuickSetOutPath "$INSTDIR\"CreateShortCut "$QUICKLAUNCH\${PRODUCT_NAME}.lnk" "$INSTDIR\${PRODUCT_EXENAME}"${If} ${AtLeastWin7}ExecShell taskbarpin "$QUICKLAUNCH\${PRODUCT_NAME}.lnk"Delete "$QUICKLAUNCH\${PRODUCT_NAME}.lnk"${EndIf}SectionEndSection "菜单栏快捷方式" Sec_MenuSetOutPath "$SMPROGRAMS"CreateDirectory "$SMPROGRAMS\${PRODUCT_INSTNAME}"CreateShortCut "$SMPROGRAMS\${PRODUCT_INSTNAME}\${PRODUCT_INSTNAME}.lnk" "$INSTDIR\${PRODUCT_EXENAME}" # 主程序快捷方式#WriteIniStr "$INSTDIR\${PRODUCT_NAME}.url" "InternetShortcut" "URL" "${PRODUCT_WEB_SITE}" # 官方网址快捷方式#CreateShortCut "$SMPROGRAMS\${PRODUCT_INSTNAME}\Website.lnk" "$INSTDIR\${PRODUCT_NAME}.url" # 将官方网址快捷方式放到菜单栏CreateShortCut "$SMPROGRAMS\${PRODUCT_INSTNAME}\Uninstall.lnk" "$INSTDIR\uninst.exe" # 卸载快捷方式SectionEndSection "Uninstall"#SetAutoClose true# Always delete uninstaller.exe first# In %temp% the "Au_.exe" do the work reallydelete "$INSTDIR\uninst.exe"Delete "$DESKTOP\${PRODUCT_INSTNAME}.lnk"Delete "$INSTDIR\${PRODUCT_NAME}.url"${If} ${AtLeastWin7}IfFileExists "$QUICKLAUNCH\User Pinned\TaskBar\${PRODUCT_NAME}.lnk" 0 +2Messagebox MB_OKCANCEL "是否删除快速启动栏" IDOK 0 IDCANCEL +2ExecShell taskbarunpin "$QUICKLAUNCH\UserPinned\TaskBar\${PRODUCT_NAME}.lnk"${EndIf}; 卸载开始菜单目录RMDir /R "$SMPROGRAMS\${PRODUCT_INSTNAME}"; Win7 下会在所有用户(all)下进行创建SetShellVarContext allRMDir /R "$SMPROGRAMS\${PRODUCT_INSTNAME}"SetShellVarContext currentRMDIR "$INSTDIR"SectionEnd通过注册表读取JAVA运行库的版本号和通过插件获取当前系统是否为admin用户# name installeroutFile "installer.exe"# default section startsection# read the value from the registry into the $0 registerreadRegStr $0 HKLM "SOFTWARE\JavaSoft\Java Runtime Environment" CurrentVersion# print the results in a popup message boxmessageBox MB_OK "version: $0"# call userInfo plugin to get user info. The plugin puts the result in the stackuserInfo::getAccountType# pop the result from the stack into $0pop $0# compare the result with the string "Admin" to see if the user is admin.# If match, jump 3 lines down.strCmp $0 "Admin" +3# if there is not a match, print message and returnmessageBox MB_OK "not admin: $0"return# otherwise, confirm and returnmessageBox MB_OK "is admin $0"# default section endsectionEnd源代码下载上一页 | 目录 | 下一页。
NSISMUI教程
![NSISMUI教程](https://img.taocdn.com/s3/m/a9ae17f81b37f111f18583d049649b6649d70952.png)
NSISMUI教程NSIS(Nullsoft Scriptable Install System)是一款开源的安装程序制作工具,它可以帮助开发者快速制作Windows平台下的安装程序。
NSIS MUI(Modern User Interface)提供了更加现代化的用户界面,能够为用户提供更好的安装体验。
本文将为您介绍如何使用NSIS MUI制作安装程序,并说明一些基本概念和常用命令。
一、NSISMUI基本概念1. 页面(Pages):安装程序的页面用于引导用户进行安装过程。
NSIS MUI提供了多种页面模板供开发者选择,例如许可协议、选择目标位置、选择组件等等。
开发者可以根据自己的需求自由调整和修改页面内容。
3. 定义(Define):定义是NSIS脚本中的一种预处理指令,用于定义一些全局的常量和变量。
开发者可以使用定义来方便地管理和使用一些常用的参数。
二、NSISMUI常用命令1. !define:用于定义全局常量。
例如:!define INSTALL_DIR "C:\Program Files\MyApp",将INSTALL_DIR定义为安装目录的路径。
2. Page:用于定义页面模板。
例如:Page License,用于添加许可协议页面。
3. Section:用于定义安装组件。
例如:Section "Main Program",用于定义一个主程序组件。
4. File:用于添加文件到安装程序。
例如:File"C:\MyApp\MyProgram.exe",将MyProgram.exe添加到安装程序中。
5. SectionIn:用于将组件添加到安装节。
例如:SectionIn RO,将当前组件添加到Read Only节。
7. LangString:用于定义多语言字符串。
例如:LangString DESC_SCHN "简体中文",定义一个用于显示中文的字符串。
NSIS使用详解(图文详解版)
![NSIS使用详解(图文详解版)](https://img.taocdn.com/s3/m/0a0de03d905f804d2b160b4e767f5acfa1c783b4.png)
NSIS使用教程NSIS简介:NSIS 是“Nullso ft 脚本安装系统”(Nullso ftscrīpt ableInstal latio n System)的缩写,它是一个免费的 Win32安装、卸载系统,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。
更多的功能请阅读蓝色网际的《NSIS帮助文档》。
对于制作NS IS的使用教程,蓝色网际是N SIS方面的专家,她的《NSIS帮助文档》就是一本NS IS的圣经,而对初学者来说,最头疼的莫过于一大堆看不懂的代码,对他们来说无异于一本天书。
缘于此,特草此基础教程,希望NSIS专家们勿见笑,不当之处欢迎批评指正以期完善,也希望给初学者作个铺垫。
工具:NIS Edit+Nullso ft Instal latio n System(NSIS)[此两款软件都可以到世纪主站上下载到]思路:脚本向导+修改代码=个性化安装包步骤:I.利用向导制作安装包:1.安装上述两款,启动NISEdit,在“文件”菜单中“新建脚本:向导”=>下一步”,如图1:附图2.设置应用程序信息,如软件名称、版本、出版人等,如图2。
当然最一个网站可以留空,如果设置了,则安装包会生成一个对应网址的“Intern et 快捷方式”。
3.设置程序选项,如安装包图标、安装程序文件、安装包语言[这里选“SimChi nese”]、用户图形界面及压缩方式等,我们可以选用默认值,也可以点击对应项目的按钮或下拉菜单更改设置,如下图3附图4.设置安装目录及授权信息,如图4后“下一步”:5.选定程序文件,即我们要打包的文件,可以使用默认的“Mainse ction”,也可以根据需要进行更改或新建组别,比较多时,你也可以设置是否“允许用户选择要安装的组件”,如图5。
nsis使用详解(图文详解版)
![nsis使用详解(图文详解版)](https://img.taocdn.com/s3/m/374bccc47e192279168884868762caaedd33ba3f.png)
nsis使用详解(图文详解版)NSIS使用教程NSIS简介:NSIS 是“Nullsoft 脚本安装系统”(Nullsoft scrīptable Installation System)的缩写,它是一个免费的Win32 安装、卸载系统,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。
更多的功能请阅读蓝色网际的《NSIS帮助文档》。
对于制作NSIS的使用教程,蓝色网际是NSIS方面的专家,她的《NSIS帮助文档》就是一本NSIS的圣经,而对初学者来说,最头疼的莫过于一大堆看不懂的代码,对他们来说无异于一本天书。
缘于此,特草此基础教程,希望NSIS专家们勿见笑,不当之处欢迎批评指正以期完善,也希望给初学者作个铺垫。
工具:NIS Edit+Nullsoft Installation System(NSIS)[此两款软件都可以到世纪主站上下载到]思路:脚本向导+修改代码=个性化安装包步骤:I.利用向导制作安装包:1.安装上述两款,启动NIS Edit,在“文件”菜单中“新建脚本:向导”=>下一步”,如图1:附图2.设置应用程序信息,如软件名称、版本、出版人等,如图2。
当然最一个网站可以留空,如果设置了,则安装包会生成一个对应网址的“Internet 快捷方式”。
附图3.设置程序选项,如安装包图标、安装程序文件、安装包语言[这里选“SimChinese”]、用户图形界面及压缩方式等,我们可以选用默认值,也可以点击对应项目的按钮或下拉菜单更改设置,如下图3 附图4.设置安装目录及授权信息,如图4后“下一步”:附图5.选定程序文件,即我们要打包的文件,可以使用默认的“Mainsection”,也可以根据需要进行更改或新建组别,如果组比较多时,你也可以设置是否“允许用户选择要安装的组件”,如图5。
附图完毕后进行“添加文件”操作,选定我们要打包的文件,如图6,完成自动后返回的图5的界面,执行下一步操作。
NSIS
![NSIS](https://img.taocdn.com/s3/m/7739f7e96294dd88d0d26be9.png)
NSIS (Nullsoft Scriptable Install System)是一个Open Source的Windows 系统下安装程序制作程序。
它提供了安装、卸载、系统设置、文件解压缩等功能。
这如其名字所指出的那样,NSIS是通过它的脚本语言来描述安装程序的行为和逻辑的。
NSIS的脚本语言和通常的编程语言有类似的结构和语法,但它是为安装程序这类应用所设计的。
NSIS脚本通常以 nsi为扩展名,支持include功能,头文件扩展名为nsh。
NSIS的主要特点是:* 开销小,一个完整功能的安装程序仅需要34k的额外开销。
* 支持大多数Windows平台,包括:Windows 9.x,Windows NT, Windows 2000, Windows XP, Windows 2003* 支持三大压缩算法: Zlig, BZips, LZMA* 支持脚本* 支持多语言* 支持安装界面定制* 提供可扩展的插件接口* 支持网络安装、补丁* 支持无人值守的安装模式* 此外,NSIS的license允许任何用途免费使用。
开发一个NSIS的安装程序通常有以下几步:1. 确定安装的功能和界面元素2. 编写NSIS脚本3. 使用NSIS提供的makensis或者makensisw程序,将步骤2编写的脚本编译成可执行的安装程序4. 调试安装程序,如果有问题退到第二步重复随着NSIS的流行,有一些第三方的NSIS脚本开发环境出现了,如HM NIS Edit,Venis IX前者是完全开源的,后者仅对个人和非商业用途免费。
在这些集成开发环境下,步骤2,3可以方便的组合在一起。
NSIS脚本的结构NSIS脚本(下称nsi脚本)主要包含安装程序属性、页面、区段、函数。
属性用来定义安装程序的行为和界面风格,这些属性大部分是编译时刻属性,即不能在运行时刻改变。
页面是指安装程序的向导页面,示例:Page licensePage componentsPage directoryPage instfilesUninstPage uninstConfirmUninstPage instfiles区段是对应某种安装/卸载选项的处理逻辑,该段代码仅当用户选择相应的选项才被执行。
一、NSIS介绍
![一、NSIS介绍](https://img.taocdn.com/s3/m/77aebb17974bcf84b9d528ea81c758f5f61f29a3.png)
⼀、NSIS介绍概述最近需要写⼀个安装程序,⽐对了⼀下现有的安装⼯具,最后选定了NSIS,最主要的原因⼀是开源、⼆是灵活。
下⾯把我的要求简单列举下:1、需要检查系统环境是否满⾜要求2、需要界⾯友好的安装过程3、需要⼀些⾃定义界⾯,在安装过程中来获取⼀些必须的信息4、需要根据界⾯的选择来执⾏或跳过⼀些安装过程5、需要操作数据库6、需要操作IIS7、需要使⽤PowerShell命令设置AD/Exchange/Lync8、需要操作注册表,⽤于标识安装步骤以⽤于卸载或回滚的执⾏经过调查发现NSIS都能实现,但它有⾃⼰的⼀套脚本语⾔,需要学习成本,如果有编程基础这个其实不难,下载⼀个“NSIS⽤户⼿册”、⼀个"NSIS"(脚本编译)、⼀个“HM NIS Edit”(脚本编辑)⼀切就可以开始啦!基本知识那么⾸先,我们先看⼀下“NSIS⽤户⼿册”吧,你总得先了解⼀下NSIS这个东西的基本介绍和脚本的基本结构吧。
我把了解的最重要的东西列举⼀下,其他涉及到细节或遇到难题就可以随时查询⽤户⼿册或者google万能的⽹络:1、安装程序的主体脚本⽂件 .nsi,可以包含⼀个或多个头⽂件 .nsh头⽂件可以通过把它划分为⼀个或多个代码块来帮你编排你的脚本,你也可以在头⽂件⾥加⼊功能函数或宏,并且在多个安装程序⾥包含头⽂件,这样可以更容易的升级你的程序,并且使你的脚本很容易的让⼈看懂。
2、⼀个安装程序的基本结构包含应⽤程序的基本信息定义、头⽂件引⽤、安装程序属性设置、安装程序页⾯、区段(安装过程脚本)和函数(安装页⾯创建之前、显⽰前和离开前的代码)等应⽤程序的基本信息定义:产品的名称、版本、发布者、⽹站等信息;头⽂件引⽤:!include ***.nsh;安装程序属性设置:安装程序语⾔、安装程序名称、输出安装⽂件、默认安装⽬录等信息;安装程序页⾯:内建页⾯(欢迎页⾯、许可页⾯、⽬录选择页⾯、组件选择页⾯、安装记录页⾯、完成页⾯)、⾃定义页⾯;区段:安装程序执⾏的实体,每⼀个 NSIS 安装程序包含⼀个或多个区段;函数:最终要的是页⾯的回调函数(每个内建页⾯有三个回调函数(预置函数、显⽰创建函数和离开函数)、⾃定义的页⾯仅有两个回调函数(创建函数和离开函数))、再就是安装的回调函数(.onInit、.onInstFailed、.onInstSuccess等)、还可以有⼀些⾃定义的函数;3、保存值和使⽤值可以使⽤Var命令来声明变量,使⽤变量来保存值,所有定义的变量都是全局的,即使在区段或函数内定义。
nsis使用详解(图文详解版)
![nsis使用详解(图文详解版)](https://img.taocdn.com/s3/m/3d84078f50e79b89680203d8ce2f0066f4336459.png)
NSIS使用教程NSIS简介:NSIS 是“Nullsof t 脚本安装系统”(Nullsof tscrīpta ble Install ationSystem)的缩写,它是一个免费的Win32 安装、卸载系统,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。
更多的功能请阅读蓝色网际的《NSIS帮助文档》。
对于制作NSI S的使用教程,蓝色网际是NS IS方面的专家,她的《NSIS帮助文档》就是一本NSI S的圣经,而对初学者来说,最头疼的莫过于一大堆看不懂的代码,对他们来说无异于一本天书。
缘于此,特草此基础教程,希望NSIS专家们勿见笑,不当之处欢迎批评指正以期完善,也希望给初学者作个铺垫。
工具:NIS Edit+Nullsof t Install ationSystem(NSIS)[此两款软件都可以到世纪主站上下载到]思路:脚本向导+修改代码=个性化安装包步骤:I.利用向导制作安装包:1.安装上述两款,启动NIS Edit,在“文件”菜单中“新建脚本:向导”=>下一步”,如图1:附图2.设置应用程序信息,如软件名称、版本、出版人等,如图2。
当然最一个网站可以留空,如果设置了,则安装包会生成一个对应网址的“Interne t 快捷方式”。
附图3.设置程序选项,如安装包图标、安装程序文件、安装包语言[这里选“SimChin ese”]、用户图形界面及压缩方式等,我们可以选用默认值,也可以点击对应项目的按钮或下拉菜单更改设置,如下图3附图4.设置安装目录及授权信息,如图4后“下一步”:附图5.选定程序文件,即我们要打包的文件,可以使用默认的“Mainsec tion”,也可以根据需要进行更改或新建组别,较多时,你也可以设置是否“允许用户选择要安装的组件”,如图5。
NSIS使用说明
![NSIS使用说明](https://img.taocdn.com/s3/m/45ba99cf4431b90d6d85c77a.png)
NSIS使用说明学习NSIS一段时间了,在这段时间里自己遇到了很多问题,也用自己摸索的方法一个个解决了,先将积累的知识点以及自己遇到的问题及解决方案,与大家共享下:第一部分:页面设置 ; MUI 预定义常量通用页面向导页面头上的文字!define MUI_PAGE_HEADER_TEXT text向导页面头上的文字想到(解释用)!define MUI_PAGE_HEADER_SUBTEXT text 欢迎页面大标题设置!define MUI_WELCOMEPAGE_TITLE \安装向导\标题下子内容设置!define MUI_WELCOMEPAGE_TEXT \欢迎说明或软件说明等\授权页面安装协议定义!insertmacro MUI_PAGE_LICENSE “文件” 显示在页面顶部的文字!define MUI_LICENSEPAGE_TEXT_TOP text 显示在页面底部的文字!defineMUI_LICENSEPAGE_TEXT_BOTTOM text 按钮方式时按钮上的文字!defineMUI_LICENSEPAGE_BUTTON button_text用户需要钩选该 checkbox 来接受软件许可!define MUI_LICENSEPAGE_CHECKBOX 在checkbox 旁显示的文字!define MUI_LICENSEPAGE_CHECKBOX_TEXT text钩选radio box 接受或拒绝许可!define MUI_LICENSEPAGE_RADIOBUTTONSradio旁接受文字!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_ACCEPT text radio 旁拒绝文字!define MUI_LICENSEPAGE_RADIOBUTTONS_TEXT_DECLINE text 组件选择页面顶部文字!define MUI_COMPONENTSPAGE_TEXT_TOP text 组件旁文字!defineMUI_COMPONENTSPAGE_TEXT_COMPLIST text 下拉框旁文字!defineMUI_COMPONENTSPAGE_TEXT_INSTTYPE text 描述框顶部文字!defineMUI_COMPONENTSPAGE_TEXT_DESCRIPTION_TITLE text无组件描述框文字!define MUI_COMPONENTSPAGE_TEXT_DESCRIPTION_INFO text 安装目录页面页面顶部文字!define MUI_DIRECTORYPAGE_TEXT_TOP text 路径选择框上文字!define MUI_DIRECTORYPAGE_TEXT_DESTINATION text 存放用户选择的目录的变量,默认是 $INSTDIR !define MUI_DIRECTORYPAGE_VARIABLE variable不禁用\下一步\按钮!define MUI_DIRECTORYPAGE_VERIFYONLEAVE 安装进度页面页面头上的文字!define MUI_INSTFILESPAGE_FINISHHEADER_TEXT text 进一步说明!define MUI_INSTFILESPAGE_FINISHHEADER_SUBTEXT text 完成页面页面标题!define MUI_FINISHPAGE_TITLE title 页面标题区的额外空格!defineMUI_FINISHPAGE_TITLE_3LINES 显示在完成页面上文字!define MUI_FINISHPAGE_TEXT text 使checkbox 时,设定文本区额外空间!define MUI_FINISHPAGE_TEXT_LARGE完成按钮的显示文字!define MUI_FINISHPAGE_BUTTON text重启操作系统 checkbox 旁的文字!define MUI_FINISHPAGE_TEXT_REBOOT text 显示在'Reboot now'旁的文字!define MUI_FINISHPAGE_TEXT_REBOOTLATER text 指定checkbox 选择运行的应用程序!define MUI_FINISHPAGE_RUN exe_file程序 checkbox 旁的文字!define MUI_FINISHPAGE_RUN_TEXT text运行应用程序的参数!define MUI_FINISHPAGE_RUN_PARAMETERS parameters 指定checkbox 为非选中状态!define MUI_FINISHPAGE_RUN_NOTCHECKED安装完成执行的nsi函数!define MUI_FINISHPAGE_RUN_FUNCTION function_name checkbox 选择查看文件网站!define MUI_FINISHPAGE_SHOWREADME file/url 用户可及点击的超链上的文字!define MUI_FINISHPAGE_LINK link_text超链上文字的颜色,默认为 000080!define MUI_FINISHPAGE_LINK_COLOR 第二部分问题及我的方法 1、组件选择部分问题组件的显示:组件的显示是根据section 定义的顺序,显示的是section的标题,若选择为空,如section “” sec01,它将不会显示在组件选择中。
nsis 读取文件循环解析
![nsis 读取文件循环解析](https://img.taocdn.com/s3/m/073ac6804128915f804d2b160b4e767f5acf8012.png)
nsis 读取文件循环解析NSIS是一种开源的安装制作软件程序,可以用于创建 Windows 平台上的安装程序。
其中一个常见的任务是读取文件并循环解析其内容。
在这篇文章中,我将详细介绍如何使用NSIS来实现这个任务。
首先,我们需要确保已经安装了NSIS。
然后,我们可以按照以下步骤来读取文件并循环解析其中的内容:1. 打开NSIS脚本文件。
在开始部分,我们首先需要引入文件读取插件。
插件是NSIS的扩展组件,可以增加其功能。
我们可以使用`nsisunz`插件来实现文件读取的功能。
可以在NSIS官网上找到这个插件的下载和安装步骤。
2. 在脚本的主要部分,我们可以创建一个函数来读取文件并循环解析其中的内容。
我们可以使用NSIS提供的`FileOpen`来打开文件,`FileRead`来读取文件内的内容,并使用`FileClose`关闭文件。
3. 接下来,我们可以使用循环结构(如`loop`)来解析文件中的每一行或特定格式的数据。
根据具体的需求,我们需要使用适当的解析方法。
例如,如果文件中的内容是以逗号分隔的数据,我们可以使用`StrToken$`函数来解析每个值。
4. 在解析过程中,我们可以将特定的信息存储到变量中,以便后续使用。
NSIS 使用`!define`指令来定义变量。
5. 最后,我们应该在文件解析完成后关闭文件。
下面是一个简单的NSIS代码示例,用于读取并解析一个文本文件中以逗号分隔的数据:```nsis!include nsisunz.nshSection; 打开文件FileOpen $0 "file.txt" rloop:; 读取文件中的一行FileRead $0 $1IfErrors done; 解析行中的每个值StrCpy $2 $1StrTok $3 $2 ","; 将解析出的值存储到变量中 !define VAR1 $3; 处理特定的业务逻辑; ...Goto loopdone:; 关闭文件FileClose $0SectionEnd```通过使用上述代码示例,我们可以实现NSIS读取文件并循环解析其内容的任务。
NSIS脚本入门和进阶方法
![NSIS脚本入门和进阶方法](https://img.taocdn.com/s3/m/6350f9c4b8f3f90f76c66137ee06eff9aef84930.png)
NSIS脚本⼊门和进阶⽅法NSIS(Nullsoft Scriptable Install System)是⼀个开源的 Windows 系统下安装程序制作程序。
它提供了安装、卸载、系统设置、⽂件解压缩等功能。
对于新⼿来说,它有安装包程序制作的引导,可以简单快速的制作完成⼀个程序安装包;对于⽼鸟来说,如果学会了NSIS的⼀些基本操作,能使⽤脚本语⾔,阅读NSIS帮助⽂档,那么也能制作出漂亮堪⽐搜狗、腾讯的安装包界⾯的安装程序。
如果你从未接触过NSIS或者NSIS基础很薄弱,按照我下边的⽅法,保你⼀个星期掌握NSIS脚本开发,达到熟练⼿的⽔平。
前提是你是⼀个会使⽤百度、⾕歌等搜索引擎的⼈。
⼀、NSIS的下载和知识的获取⽅式。
NSIS下载:使⽤百度或者⾕歌搜索引擎搜索⼀下,NSIS资源很多。
也可以去官⽹直接下载,官⽹地址如下。
NSIS安装:都开始使⽤NSIS了,说明您常和电脑打交道,软件安装⾃然不在话下。
按照引导安装就OK。
安装时同时要安装NSIS和NisEdit 两个⼯具,NSIS包含编译器、使⽤的库、例⼦、⽂档等,NisEdit是NSIS编辑器。
NSIS帮助:NSIS帮助是很全⾯的,讲解了NSIS脚本的语法和常⽤函数,这个直接在NSIS的帮助⾥就能找到。
(官⽹、论坛等也可以直接从这⾥进)。
另外你也可以加⼊⼀些技术群或使⽤搜索引擎熟悉NSIS技术。
⼆、NSIS进阶⽅法1、下载好NSIS后,按照NSIS的提供的向导制作⼀个安装脚本。
在⽂件-》新建模版:向导。
(半天时间)2、根据向导制作好的脚本,对照功能看脚本。
熟悉基本的语法和功能函数。
对于不熟悉的⽅法或函数,光标放在上⾯后按【F1】,就可以看到帮助。
(⼀天时间)3、根据⾃⼰的实际需求修改脚本。
如果添加或减少安装步骤,更换⼀些图⽚,修改⼀些界⾯的⽂字等等。
(⼀天半时间)4、先使⽤插件⾃定义简单的界⾯,然后使⽤插件⾃定义复杂安装界⾯,这个可以在⽹上查找教程。
nsis使用方法 -回复
![nsis使用方法 -回复](https://img.taocdn.com/s3/m/e4d10308f6ec4afe04a1b0717fd5360cba1a8d0b.png)
nsis使用方法-回复标题:NSIS(Nullsoft Scriptable Install System)的使用方法一、NSIS简介NSIS(Nullsoft Scriptable Install System)是一个开源的Windows系统下的安装程序制作工具。
它允许你编写脚本来创建一个完整的安装包,包括文件解压缩、注册表修改、开始菜单和桌面快捷方式创建等功能。
其小巧灵活的特点使得它被广泛应用于各种软件的安装包制作。
二、NSIS环境搭建1. 下载并安装NSIS。
你可以从NSIS的官方网站下载最新版本的安装包,并按照提示完成安装。
2. 安装完成后,打开命令行界面,输入makensis -V查看NSIS是否已经成功安装。
如果显示出NSIS的版本信息,说明安装成功。
三、创建第一个NSIS脚本1. 打开文本编辑器,如记事本或者Notepad++,新建一个空白文档。
2. 在文档中输入以下内容:bash; 这是你的第一个NSIS脚本Name "Hello World" ; 定义安装包的名字OutFile "helloworld.exe" ; 定义输出的安装包文件名InstallDir "PROGRAMFILES\HelloWorld" ; 定义安装路径Section ; 定义一个新的安装步骤SetOutPath INSTDIR ; 设置当前输出路径为安装路径File "hello.txt" ; 将hello.txt文件复制到安装路径SectionEnd3. 保存文件为`helloworld.nsi`,然后在命令行界面中输入`makensis helloworld.nsi`,这将生成一个名为`helloworld.exe`的安装包。
4. 运行`helloworld.exe`,你会发现它会将`hello.txt`文件安装到`C:\Program Files\HelloWorld`目录下。
打包工具NSIS使用技巧
![打包工具NSIS使用技巧](https://img.taocdn.com/s3/m/83bbf20b5f0e7cd1842536c3.png)
用NSIS软件制作安装包时总会用到那么几个常用的代码,正因为常用到,自己脑袋又不好记不住,所以就一一记录下来,时间一长自然也就成好多条了,贴出来与大家分享一下吧。
1.如何运行一个批处理文件.bat注:xiaojian.bat为你的文件名ExecWait "xiaojian.bat"不显示黑框框nsExec::Exec "xiaojian.bat"2.如何运行一个VBS文件.vbs注:xiaojian.vbs为你的文件名ExecWait '"$SYSDIR\cscript.exe" "xiaojian.vbs"'不显示黑框框nsExec::Exec '"$SYSDIR\cscript.exe" "xiaojian.vbs"'3.如何运行一个注册表文件.reg注:xiaojian.reg为你的文件名ExecWait "regedit.exe /s xiaojian.reg"另外直接写入注册表WriteRegStrWriteRegExpandStrWriteRegDWORDWriteRegBin比如: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.关联文件图标后,图标没变化。
NSIS用户手册
![NSIS用户手册](https://img.taocdn.com/s3/m/d52a0ce981c758f5f71f6707.png)
Pages,定义授权书页,目录选择页,组件选择页,反安装页等等。
Sections,把安装进程分成多个阶段来定义,方便操作。
Functions,定义一些函数,在安装时进行用户交互。
脚本格式
*/
File "myfile" ; Comment
如果你需要以;或#作为参数,你应把他们放在引号里面。
Plug-ins
插件调用的方法:'plugin::command[parameters]'
nsExec::Exec "myfile"
Numbers
作为参数的数值,可以用整数、16进制(以0x开头)、8进制(以0开头)
开始菜单位置。
$SMPROGRAMS
开始菜单程序目录。
$SMSTARTUP
开始菜单启动目录
$QUICKLAUNCH
快速启动目录
$DOCUMENTS
文档目录。
IDNO NoRemoveLabel
Configuration file
若"makensis.exe"的目录下有"nsisconf.nsh"这样的文件,则该文件会被默认包含在任何脚本文件中,除非/NOCONFIG编译开关被指定。
变量
所有的变量都是全局的,可在任何段落和函数中使用。
$SENDTO
发送到目录
$RECENT
最近的文档目录。
$FAVORITES
$MUSIC
$PICTURES
$VIDEOS
NSIS的ModernUI教程
![NSIS的ModernUI教程](https://img.taocdn.com/s3/m/c1bf5d1dba68a98271fe910ef12d2af90242a80a.png)
NSIS 的Modern UI 教程NSIS 2.0 版本支持定制的用户界面。
所谓的Modern UI(下称MUI) 就是一种模仿最新的Windows 界面风格的界面系统。
MUI 改变了NSIS 脚本的编写习惯,它使用NSIS 的宏来表达,指定MUI 的属性需要使用宏。
所以,诸如LicenseText, Icon, CheckBitmap, InstallColors 在MUI 中失去意义。
MUI 的内置向导页面和安装程序有关的向导页面MUI_PAGE_WELCOME 该向导页面显示欢迎信息MUI_PAGE_LICENSE text/rtf_file 该向导页面显示软件授权申明MUI_PAGE_COMPONENTS 该向导页面显示安装组件选择MUI_PAGE_DIRECTORY 该向导页面显示安转目录选择MUI_PAGE_STARTMENU page_id variable 该向导页面显示开始菜单目录选择MUI_PAGE_INSTFILES 该向导页面显示安装进度MUI_PAGE_FINISH 该向导页面显示安装结束和卸载程序有关的向导页面MUI_UNPAGE_W ELCOMEMUI_UNPAGE_CONFIRMMUI_UNPAGE_LICENSE text/rtf_fileMUI_UNPAGE_COMPONENTSMUI_UNPAGE_DIRECTORYMUI_UNPAGE_INSTFILESMUI_UNPAGE_FINISH页面的属性设定需要放在插入页面的宏之前。
比如:Var PLUGINS_FOLDER!define MUI_DIRECTORYPAGE_VARI ABLE $PLUGINS_FOLDER!insertmacro MUI_PAGE_DIRECTORY这段nsi 脚本表示,将目录选择页面中用户选择的目录位置存放到变量$PLUGINS_FOLDER 中去。
以下是MUI 各个内置向导页面属性说明:所有页面适用的属性MUI_PAGE_HEADER_TEXT text显示在向导页头上的文字MUI_PAGE_HEADER_SUBTEXT text显示在向导页头上的文字,它是通常显示在MUI_PAGE_HEADER_TEXT 之下,表示对MUI_PAGE_HEADER_TEXT 的进一步解释。
三、NSIS实例
![三、NSIS实例](https://img.taocdn.com/s3/m/16461309e97101f69e3143323968011ca300f743.png)
三、NSIS实例页⾯说明像我们第⼀章“概述”所说的要求,结合实际应⽤的需求,安装程序具体页⾯内容说明如下:1、欢迎页⾯2、许可页⾯3、系统环境检查页⾯操作系统:Windows Server 2008 R2 / 2012 / 2012 R2 x64服务器是否已加⼊域是否安装数据库SQL Server 2012 Express)检查未通过给出提⽰信息,单击[下⼀步(N)]安装程序将要退出;否则继续安装4、AD服务器配置页⾯设置项:AD服务器地址、域名称、管理员账户、账户密码5、Exchange服务器配置页⾯设置项:是否启⽤邮箱功能(默认启⽤)、Exchange版本(默认Exchange 2013)、Exchange服务器地址、管理员账户、账户密码6、Lync服务器配置页⾯设置项:是否启⽤Lync功能(默认启⽤)、Lync版本(默认Lync 2013)、Lync服务器地址、管理员账户、账户密码7、⽬录选择页⾯8、组件页⾯如果在Exchange服务器配置页⾯启⽤邮箱功能未勾选则Exchange相关设置组件则不选中,Lync设置同理9、安装记录页⾯步骤⼀:Windows必备组件安装 【1、安装IIS;2、安装.Net Framework】步骤⼆:Active Directory帐户准备 【1、ADWeb权限管理员账户“AccessManager”; 2、AD管理员帐户(⾪属于Domain Admins、如果启⽤了Exchange功能需要⾪属于Organization Management、Recipient Management)】步骤三:Active Directory委派设置 【设置Web服务器为“信任此计算机来委派任何服务(仅Kerberos)”】步骤四:数据库服务器配置 【1、执⾏数据库创建和初始化脚本“ADManager.sql”;2、配置数据库表AppSetting(ADServerIP、DomainName; 如果启⽤了Exchange功能需要设置IsEnableExchange、ExchangeVersion、ExchangeServerIP、ExchangeDomainUser、ExchangeDomainUserPwd; 如果启⽤了Lync功能需要设置IsEnableLync、LyncVersion、LyncServerIP、LyncDomainUser、LyncDomainUserPwd); 3、新建登录名“ADWebAdmin(验证⽅式为 Windows⾝份验证)”对新建数据库有读写权限;】步骤五:Exchange相关设置(如果启⽤了Exchange功能需要设置) 【1、确定Exchange相关服务是否启动;2、确定Exchang账户对ShellUri有完全控制权限】步骤六:Lync相关设置(如果启⽤了Lync功能需要设置) 【1、确定Lync相关服务是否启动;2、确定Lync账户对ShellUri有完全控制权限】步骤七:应⽤程序部署 【1、创建应⽤程序池(需设置应⽤程序池标识为AD管理员帐户,.NET CLR版本V4.0,经典模式);2、创建应⽤程序物理路径(把部署包解压缩到安装路径);3、创建应⽤程序站点(绑定https/*:443,⾃签名证书);4、站点设置(设置上⾯创建的应⽤程序池;设置⾝份验证(Windows⾝份验证、模拟); 设置连接字符串为集成Windows⾝份验证)】步骤⼋:后续处理 【1、在安装⽬录下输出卸载程序Uninstall.exe;2、创建桌⾯快捷⽅式⽂件夹,包括Web应⽤程序⾸页快捷⽅式和卸载程序的快捷⽅式3、写注册表信息】10、完成页⾯ 【上⾯提⽰桌⾯快捷⽅式,并有连接可以通过桌⾯快捷⽅式来打开Web应⽤程序】以上,其中中间步骤任何⼀个环节出错会有提⽰,并根据每⼀步安装的标识(写⼊注册表中)来恢复相应的设置,恢复完成退出安装。
nsis使用方法 -回复
![nsis使用方法 -回复](https://img.taocdn.com/s3/m/51cc10ae6394dd88d0d233d4b14e852458fb3935.png)
nsis使用方法-回复NSIS是Nullsoft Scriptable Install System的缩写,是一个开源、免费且功能强大的Windows安装制作工具。
使用NSIS能够帮助开发者轻松创建自定义的安装程序,从而更好地进行软件分发和部署。
本文将详细介绍NSIS的使用方法,为初学者提供一步一步的指导。
第一步:准备工作在开始使用NSIS之前,首先需要下载并安装官方的NSIS软件包。
打开NSIS官方网站(第二步:创建NSIS安装脚本打开NSIS软件,点击“File”菜单,选择“New Script”以创建一个新的安装脚本。
安装脚本是NSIS的核心组成部分,它定义了安装过程中所需的各个步骤和操作。
第三步:编辑安装脚本安装脚本是一种基于脚本语言的文本文件,它使用NSIS的脚本语法来描述安装过程。
以下是一个简单的安装脚本示例:# 定义安装程序标题Outfile "MyInstaller.exe"Name "My Installer"# 定义安装器界面InstallDir PROGRAMFILES\MyAppDirText "选择要安装的文件夹:"# 定义安装过程Section "主程序" SEC01SetOutPath INSTDIRFile "MyApp.exe"SectionEndSection "帮助文件" SEC02SetOutPath INSTDIRFile "HelpFile.txt"SectionEndSection "快捷方式" SEC03CreateShortcut "DESKTOP\MyApp.lnk" "INSTDIR\MyApp.exe" SectionEnd# 定义安装程序完成时的操作FunctionEnd上述安装脚本中,首先使用`Outfile`命令定义了生成的安装程序文件名为"MyInstaller.exe",使用`Name`命令定义了安装程序的标题为"My Installer"。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
NSIS使用教程NSIS简介:NSIS 是“Nullsoft 脚本安装系统”(Nullsoft scrīptable Installation System)的缩写,它是一个免费的Win32 安装、卸载系统,它的特点:脚本简洁高效;系统开销小;当然进行安装、卸载、设置系统设置、解压文件等等更不在话下,几乎可以做所有的事情。
更多的功能请阅读蓝色网际的《NSIS帮助文档》。
对于制作NSIS的使用教程,蓝色网际是NSIS方面的专家,她的《NSIS帮助文档》就是一本NSIS的圣经,而对初学者来说,最头疼的莫过于一大堆看不懂的代码,对他们来说无异于一本天书。
缘于此,特草此基础教程,希望NSIS专家们勿见笑,不当之处欢迎批评指正以期完善,也希望给初学者作个铺垫。
工具:NIS Edit+Nullsoft Installation System(NSIS)[此两款软件都可以到世纪主站上下载到]思路:脚本向导+修改代码=个性化安装包步骤:I.利用向导制作安装包:1.安装上述两款,启动NIS Edit,在“文件”菜单中“新建脚本:向导”=>下一步”,如图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:在源代码“ MUI Settings”后面添加下列代码:以下是代码片段:!define MUI_WELCOMEFINISHPAGE_BITMAP "G:\temp\ pwr.bmp"注释:引号内为位图的路径,位图大小大约为165*298效果图如图14所示附图2)修改安装包标题,在同上位置添加下列代码:以下是代码片段:!define MUI_WELCOMEPAGE_TITLE "\r\n PDF2all 5.35d 汉化版"注释:\r\n为换行标志效果图上楼如图14所示3)修改图11C中的说明,同上位置添加下列代码:以下是代码片段:!define MUI_WELCOMEPAGE_TEXT "pdf2all是一个转换器的集合,它能转换包括doc2pdf (Word to PDF),xls2pdf (Excel Sheet到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中的修改,在源代码:以下是代码片段:ShowInstDetails showShowUnInstDetails show后添加:以下是代码片段:BrandingText "软件汉化:高芳銮 (Raindy)"效果图如图15所示附图5)在完成添加“汉化说明”,只要在源代码:以下是代码片段:; Finish page后添加:以下是代码片段:!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\汉化说明.txt"!define MUI_FINISHPAGE_SHOWREADME_TEXT "汉化说明"效果所示附图6)闪屏界面,可以在源代码中加入下列代码即可:A、普通效果以下是代码片段:Function .onInitSetOutPath $TEMPFile /oname=spltmp.bmp "G:\Temp\Nsisres\splash.bmp"splash::show 2300 $TEMP\spltmpPop $0FunctionEnd效果图如此软件下载:pdf2all-setup.rarB、渐隐闪屏以下是代码片段:Function .OnInitInitPluginsDirFile /oname=$PLUGINSDIR\splash.bmp "G:\Temp\Nsisres\splash.bmp"advsplash::show 1500 800 600 -1 $PLUGINSDIR\splashFunctionend7)背景音乐[贯穿安装过程]以下是代码片段:Var hmciFunction .OnInitInitPluginsDirSetOutPath $PLUGINSDIRFile "G:\Temp\Nsisres\music.mp3" [说明:源MP3的存放路径]System::Call msvfw32.dll::MCIWndCreate(i 0, i 0,i 0x0070, t "$PLUGINSDIR\music.mp3") i .r0SendMessage $0 0x0465 0 "STR:play repeat"System::Call user32.dll::ShowWindow(i r0, i 0)StrCpy $hmci $0FunctionendSection;add your codesSendMessage $hmci 0x0010 0 0Sectionend后语:以上仅是NSIS制作安装包最基本的操作,供初学者入门之用,故云“初级篇”。
希望不会怡笑大方,更希望蓝MM、陈敏毅老大等NSIS高手的中高级教程:)相关资料下载[以Pdf2allV5.35d为例,可直接点击下载]全文的Word文档附在附件中NSIS.rar偶以Pdf2allV5.35d为例,制作了安装包制作动画演示[可直接点击下载]相关文件列表如下:动画演示[pdf2all-movie.exe]安装包的NSIS脚本代码[PDF2all-nsis.nsi.txt]以下是代码片段:Function .OnInitInitPluginsDirFile /oname=$PLUGINSDIR\splash.bmp c:\test.bmpadvsplash::show 1500 800 600 -1 $PLUGINSDIR\splashFunctionend背景音乐(贯穿安装全过程):以下是代码片段:Function .OnInitInitPluginsDirSetOutPath $PLUGINSDIRFile "c:\a.mp3"System::Call msvfw32.dll::MCIWndCreate(i 0, i 0,i 0x0070, t "$PLUGINSDIR\a.mp3") i .r0SendMessage $0 0x0465 0 "STR:play repeat"System::Call user32.dll::ShowWindow(i r0, i 0)StrCpy $hmci $0FunctionendSection;add your codesSendMessage $hmci 0x0010 0 0Sectionend背景音乐2:以下是代码片段:Section/FunctionSetOutPath $PLUGINSDIRFile $WINDIR\MEDIA\chimes.wavBgImage::Sound /NOUNLOAD /WAIT "$PLUGINSDIR\chimes.wav"BgImage::Clear /NOUNLOADSectionend/Functionend最后一种方法使用了bgimage 插件,安装程序执行到该插件时会等待wav 播放完再继续执行。
raindy谢谢dujuan509兄如果闪屏效果[渐隐]+背景音乐[全程]放在一起那代码该如何修改?偶两者无法兼得望不吝赐教dujuan509以下是代码片段:outfile test.exeVar hmciFunction .OnInitInitPluginsDirSetOutPath $PLUGINSDIRFile "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 $0File /oname=$PLUGINSDIR\splash.bmp c:\test.bmpadvsplash::show 1500 800 600 -1 $PLUGINSDIR\splashFunctionendSection;add your codessleep 5000SendMessage $hmci 0x0010 0 0Sectionendraindy谢谢dujuan509兄已经学会了:)可惜背景音乐只能支持MP3格式如果能支持midi等就好了蓝色网际MIDI 请参考这个DEMO附件midi.zip蓝色网际推荐一个NSIS 的快速编辑器- NotePad2。