UT=120000 '"$SYSDIR\cscript.exe" "${CATALINA_HOME}\bin\runbat.vbs"'
FunctionEnd
;启动MySQL服务
Function startMySQLService
ExecCmd::exec /TIMEOUT=60000 "net start MySQL"
Sleep 1500
SetOutPath "$INSTDIR\${MYSQL_RESOURCE_CATALOG}\bin"
Sleep 1500
ExecCmd::exec /TIMEOUT=60000 "mysql.exe -uroot -p123456 <ims.sql"
FunctionEnd
;停止TOMCAT服务
Function un.stopTomcatService
ExecCmd::exec /TIMEOUT=120000 "net stop Tomcat6"
FunctionEnd
;停止MySQL服务
Function un.stopMySQLService
ExecCmd::exec /TIMEOUT=20000 "net stop MySQL"
FunctionEnd
;删除TOMCAT服务
function un.removeTomcatService
SetOutPath "$INSTDIR\${TOMCAT_RESOURCE_CATALOG}\bin"
ExecCmd::exec /TIMEOUT=120000 "service.bat remove"
functionend
;删除MySQL服务
function un.removeMySQLService
ExecWait "$INSTDIR\${MYSQL_RESOURCE_CATALOG}\bin\mysqld -remove"
functionend
;------------------------------反安装-------------------------------
Section Uninstall
ExecCmd::exec /TIMEOUT=120000 "taskkill /im tomcat6.exe /f"
Call un.stopTomcatService
Call un.stopMySQLService
Call un.removeTomcatService
Call un.removeMySQLService
Delete "$DESKTOP\${PRODUCT_NAME}.lnk"
Delete "$SMPROGRAMS\${PRODUCT_NAME}\Uninstall.lnk"
Delete "$SMPROGRAMS\${PRODUCT_NAME}\${PRODUCT_NAME}.lnk"
RMDir "$SMPROGRAMS\${PRODUCT_NAME}"
Delete "$INSTDIR\${PRODUCT_NAME}.url"
Delete "$INSTDIR\uninst.exe"
RMDir /r "$INSTDIR"
DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}"
DeleteRegValue ${PRODUCT_AUTORUN_ROOT_KEY} "${PRODUCT_AUTORUN_KEY}" "${PRODUCT_NAME}"
Call un.removeEnvPath
SetAutoClose true
SectionEnd
View Code
四. 编译前准备
1. 新建resource、target、script三个文件夹
2. 将jdk1.6.0_21、tomcat6.0.33放置到resource文件夹下
3. 创建licence.txt文件,放置到resource文件夹下
4. 将ims1.0.0-jdk1.6.0_21&tomcat6.0.33.nsi放置到script文件夹下
5. 在script下新建third文件夹,将AddPath.nsh、WriteEnvStr.nsh放置到该文件夹下
五. 编译nsi脚本
右键nsi脚本,选择Compile NSIS Script进行编译,最终在target目录下生成exe安装包。
|