求安装程序的NSIS脚本的详细说明

求安装程序的NSIS脚本的详细说明,第1张

NSIS--基于脚本的安装程序- -

“NSIS (Nullsoft Scriptable Install System) 是 Windows 下的一个工具,它允许程序员

来创建这样的安装程序。它发布于一个开源的协议并且对于任何使用来说都是完全免费的。”

--NSIS用户手册

Foobar是我听听音乐的工具,而且使用了Winamp那么长时间了,对Nullsoft非常熟悉,但是

可能是由于整个公司的软件开放程度不高吧,具体它有些什么特长的东西一直不清楚。所以第

一次听说有一个NSIS的东西可以方便灵活的定制安装程序,是Nullsoft退出的,我还有些惊讶。

“NSIS 创建的安装程序能够安装、卸载、设置系统设置、解压文件等等。因为它基于脚本文

件,你可以完全的控制安装程序的每一部分。脚本语言支持变量、函数、字串 *** 作,就像一个

普通的程序语言一样 - 但是设计来创建安装程序。即使有那么多的特性,NSIS 仍然是最小的

安装程序系统。在默认选项下,它仅增加了 34 KB 的开销。”--NSIS用户手册

不过看到NSIS.sourceforge.net的若干图标,一下子我就想起来了,原来好多的软件都使用

它制作安装程序,特别是那个带一个向下箭头的圆球图标老是出现在开源软件的安装程序中。

结果我都不知道这个东西,是在是有些不好意思了。

说起来要学习制作一个基于NSIS的安装程序可不是一个小时就可以的事情(恐怕要两个小时 ),

因为制作一个安装程序需要学习NSIS的脚本编写,这基本上就是一门新的语言,是有一定

难度的。我自己的感觉是这种脚本语法简单,结构清除,由于使用了插件的方式扩展,功能相

当的强大(网络上有不少各式各样的插件,自己也可以方便的编写)。如果运用熟练几乎可以

随心所欲的 *** 控安装程序,文件,网络以及 *** 作系统等等。而编写简单的安装程序更是手到擒

来,比如下面的一段相信大家一看就知道要做什么了。

---一个简单的安装程序

#

# 定义产品的信息,供以后程序使用

#

!define PRODUCT_NAME "TestSetup"

!define PRODUCT_VERSION "1.0"

!define PRODUCT_PUBLISHER "My company, Inc."

!define PRODUCT_WEB_SITE "http://www.mycompany.com"

!define PRODUCT_SERIAL_NUMBER "123" 序列号

!define TEMP_SN $R0 处理序列号对话框中用到的临时变量

#

# 显示的各个页面定义

#

Page license # 许可声明显示页

Page components # 选择安装组件

Page directory# 指定安装目录

Page instfiles# 安装拷贝显示页

#

# 设置总体的信息

#

Name "${PRODUCT_NAME} ${PRODUCT_VERSION}"

OutFile "${PRODUCT_NAME}-${PRODUCT_VERSION}.exe"

ShowInstDetails show

InstallDir "d:\tmp"

LicenseData "readme.txt"

# 我在这里默认只支持中文方式的安装

LoadLanguageFile "${NSISDIR}\Contrib\Language Files\SimpChinese.nlf"

#

# 各个段的详细定义(根据选择组件,执行各个区段)

#

Section "说明文件"

SetOutPath "$INSTDIR" # 将这里的文件安装到目标目录中。

SetOverwrite ifnewer

File "license.txt" "readme.txt"

SectionEnd

Section "正文"

SetOutPath "$INSTDIR" # 将这里的文件安装到目标目录中。

SetOverwrite ifnewer

File "About NSIS.txt"

DetailPrint "正文安装结束了!"

SectionEnd

----程序结束

像是上面这样的一个简单脚本也许就可以满足很多人的要求了,而许多商业安装程序工具生

成的结果也不过如此,可见NSIS这个开源的工具还是非常强大的,怪不得好多著名的软件都使

用它制作自己的安装程序(参见nsis的users)。在NSIS的Wiki上有好多非常实用的脚本和插

件供人们下载使用,论坛内的讨论也非常切入要害。更加难能可贵的是NSIS支持中文的程度非

常的高,国内不少有志人士为了这个东西作出了巨大贡献。所以文档和软件全部都有中文版本

,而像HM-NIS Edit这样的NSIS脚本编辑软件也是也从源代码级别进行了汉化,使用中完全没

有语言的障碍。

1,jdk:c:\programe files\java 目录里有两个目录:jdk1.6.0_12 和 jre1.6.0_12直接把java文件夹拷贝过来

2.一个tomcat的本。然后修改service.bat文件,在第一行加上

set JAVA_HOME=C:\ MyApp\java\jdk1.6.0_10

3.本的mysql,修改一下其中的配置。

basedir="C:/MyApp/MySQL/MySQL Server 5.1/" datadir="C:/ MyApp /MySQL/MySQL Server 5.1/Data/"

4.把创建数据库文件放在mysql的data下,把war包放在tomcat的webapps下.

5.利用以下批处理文件

@echo off

color 1f

setlocal enabledelayedexpansion

Set PATH=%PATH%%SystemRoot%\system32%SystemRoot%

Title 系统安装

cls

echo ╔- -╗

echo 系统安装

echo ╚- -╝

echo -------------------------------------------------

echo.

rem *******************************************************

@echo off

ver | find "5.0" >nul goto xp

ver | find "5.1" >nul goto xp

ver | find "5.2" >nul goto xp

ver | find "6.0" >nul goto Vista

goto Vista

:xp

set NowPath=%cd%

set DestopPath=%ALLUSERSPROFILE%\桌面

goto end

:Vista

set /p NowPath=请输入安装路径:

set DestopPath=%PUBLIC%\Desktop

IF EXIST %NowPath%\install.bat ( echo. ) else ( echo 路径错误 goto Vista )

goto end

:end

Set IsDo=Y

for /F "usebackq skip=4 tokens=2,5" %%i in (`"netstat -ano -p TCP"`) do (

call :Assoc %%i TCP %%j

if !TCP_Port!==3306 ( Set IsDo=N Set Port1=3306a )

if !TCP_Port!==8888 ( Set IsDo=N Set Port2=8888 )

if !TCP_Port!==8006 ( Set IsDo=N Set Port3=8006 )

if !TCP_Port!==8010 ( Set IsDo=N Set Port4=8010 )

rem echo !TCP_Port!

)

IF %IsDo%==N (

echo 检测安装条件: 不通过

echo --------------------------------------------------

echo.

echo !Port1! !Port2! !Port3! !Port4! 端口被占用!

echo.

echo 请停止以上端口,否则不能安装本系统!

echo.

echo --------------------------------------------------

echo.

pause exit

) else (

echo 检测安装条件: 通过

echo.

echo --------------------------------------------------

echo.

)

rem *******************************************************

echo 系统安装过程:

echo --------------------------------------------------

set CATALINA_HOME=%NowPath%\tomcat

Set PATH=%PATH%%JAVA_HOME%\bin

Set CLASSPATH=.%JAVA_HOME%\lib\tools.jar%JAVA_HOME%\lib\dt.jar

%NowPath%\mysql\bin\mysqld --install MySql --defaults-file=%NowPath%\mysql\my.ini >nul

echo Install MySql Services. Services Name: MySql

net start MySql

call %NowPath%\tomcat\bin\service.bat install Tomcat5 >nul

echo Install Tomcat5 Services. Services Name: Tomcat5

net start Tomcat5

%SystemDrive%

cd %DestopPath%

copy %NowPath%\销售系统安装工具.lnk 销售系统安装工具.lnk >nul

pause exit

:Assoc

for /F "tokens=2 delims=:" %%e in ("%1") do (

set %2_Port=%%e

)

经行一些设置..然后利用打包工具打包成exe就行了

Iron Speed Designer V3.2.2.29147

微软.NET多层网络应用快速开发工具,无论是行业应用还……

*** 作系统:Win9x/NT/2000/XP 授权方式共享版

2006-02-04 1050 20318KB

Nullsoft Install System (NSIS) V2.14 汉化版

NSIS 是“Nullsoft 脚本安装系统”(Nullsoft Scriptab……

*** 作系统:Win9x/NT/2000/XP 授权方式:免费版

2006-02-04 18232 3216KB

编译工作台 V1.1

编译工作台设计用于编译原理课程演示及参考,它能够对……

*** 作系统:Win9x/NT/2000/XP 授权方式:试用版

2006-02-03 403 736KB

DBF Manager V1.30 Build 21

这是一款用来管理数据库的软件,除了功能强大以外,它……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-03 5422 1822KB

EMS MySQL Manager Pro V3.6.0.1

虽然 phpmysqladmin 的管理界面很直接又简单,但图形界……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-03 35889 15140KB

EMS MySQL Manager Lite V3.6.0.1

虽然 phpmysqladmin 的管理界面很直接又简单,但图形界……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-03 14410 13177KB

ShellBrowser For C++ &Delphi V5.0

通过 Windows95/NT 的外壳名字方便浏览的 VCL 组件。……

*** 作系统:Win95/98/Me 授权方式:共享版

2006-02-02 1443 6423KB

Help &Manual V4.1 build 853

YSIWYG(所视即所得)的 Help 文件制作工具,支持打印……

*** 作系统:Win9x/NT/2000/XP 授权方式:免费版

2006-02-02 12466 28516KB

FastReport V3.20.15

FastReport 是非常强大的报表控件,相比QuickReport,……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-02 32382 6220KB

Turbo C V2.01 重装上阵版

C语言编程工具,小巧实用,是编程和学习C语言的好工具……

*** 作系统:Win9x/NT/2000/XP 授权方式:免费版

2006-02-02 820124 1566KB

Turbo C/C++ V3.0 Build 0601 重装上阵版

====关于“Turbo C/C++ v3.0 重装上阵版”的说明==== ……

*** 作系统:Win9x/NT/2000/XP 授权方式:免费版

2006-02-02 36284 3147KB

MySQL Backup Watcher V1.9.1

MySQL 服务器,归档可能被在地方计算机上做和在因特网……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-01 2660 2971KB

Code Library for .NET V13.2.2218 (MySQL)

过去自己在写程序时经常会需要找程序片段或相关资料以……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-01 3576 2052KB

Code Library for .NET V13.2.2218 (MS Access)

过去自己在写程序时经常会需要找程序片段或相关资料以……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-01 3841 4340KB

Code Library for .NET V13.2.2218 (SQL Server/MSDE)

过去自己在写程序时经常会需要找程序片段或相关资料以……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-01 11701 2054KB

软件变脸王 2006 V2.5

软件变脸王是一款软件即时美化及修改工具,可以立马把……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-02-01 220 807KB

VB反编译精灵 V2.1

一款VB程序反编译工具,能够反编译VB5/VB6的部分程序代……

*** 作系统:Win9x/NT/2000/XP 授权方式:试用版

2006-01-28 882 2198KB

SourcePublisher C++ V1.4.340

一款可以把C++源代码和相关信息转化到pdf或者html文件……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-01-27 2547 9558KB

SourcePublisher Ada V1.4.340

SourcePublisher for Ada 是一款能够将你的Ada代码及其……

*** 作系统:Win9x/NT/2000/XP 授权方式:共享版

2006-01-27 833 9170KB

不知道你要那样,自己看看吧参考资料:http://www.skycn.com/sort/sort090000_indate_DESC_1.html


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7178837.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-02
下一篇 2023-04-02

发表评论

登录后才能评论

评论列表(0条)

保存