Index: tomcat.nsi =================================================================== --- tomcat.nsi (revision 1294736) +++ tomcat.nsi (working copy) @@ -38,6 +38,7 @@ !include "StrFunc.nsh" !include "LogicLib.nsh" !include "FileFunc.nsh" +!include "TextFunc.nsh" ${StrRep} Var JavaHome @@ -354,6 +355,36 @@ SectionEnd +Var _String +Var _DefaultValue +Var _Result + +!macro _Call func return param1 param2 + Push $_String + Push $_DefaultValue + + StrCpy $_String '${param1}' + StrCpy $_DefaultValue '${param2}' + Call ${func} + StrCpy ${return} $_Result + + Pop $_DefaultValue + Pop $_String +!macroend + +!define ReadFromConfigIni "!insertmacro _ReadFromConfigIni" +!macro _ReadFromConfigIni return param1 param2 + !insertmacro _Call ReadFromConfigIniFunc ${return} '${param1}' '${param2}' +!macroend +Function ReadFromConfigIniFunc + ${ConfigRead} $EXEDIR\config.ini '$_String=' $_Result + IfErrors 0 done + StrCpy $_Result '$_DefaultValue' + + done: +FunctionEnd + + Function .onInit ${GetParameters} $R0 ClearErrors @@ -370,20 +401,21 @@ StrCpy $ResetInstDir "$INSTDIR" ;Initialize default values - StrCpy $JavaHome "" - StrCpy $TomcatPortShutdown "8005" - StrCpy $TomcatPortHttp "8080" - StrCpy $TomcatPortAjp "8009" - StrCpy $TomcatMenuEntriesEnable "0" - StrCpy $TomcatShortcutAllUsers "0" - StrCpy $TomcatServiceDefaultName "Tomcat@VERSION_MAJOR@" - StrCpy $TomcatServiceName $TomcatServiceDefaultName - StrCpy $TomcatServiceFileName "Tomcat@VERSION_MAJOR@.exe" - StrCpy $TomcatServiceManagerFileName "Tomcat@VERSION_MAJOR@w.exe" - StrCpy $TomcatAdminEnable "0" - StrCpy $TomcatAdminUsername "" - StrCpy $TomcatAdminPassword "" - StrCpy $TomcatAdminRoles "" + ${ReadFromConfigIni} $JavaHome "JavaHome" "" + ${ReadFromConfigIni} $TomcatPortShutdown "TomcatPortShutdown" "8007" + ${ReadFromConfigIni} $TomcatPortHttp "TomcatPortHttp" "8080" + ${ReadFromConfigIni} $TomcatPortAjp "TomcatPortAjp" "8009" + ${ReadFromConfigIni} $TomcatMenuEntriesEnable "TomcatMenuEntriesEnable" "0" + ${ReadFromConfigIni} $TomcatShortcutAllUsers "TomcatShortcutAllUsers" "0" + ${ReadFromConfigIni} $TomcatServiceDefaultName "TomcatServiceDefaultName" "Tomcat@VERSION_MAJOR@" + ${ReadFromConfigIni} $TomcatServiceName "TomcatServiceName" $TomcatServiceDefaultName + ${ReadFromConfigIni} $TomcatServiceFileName "TomcatServiceFileName" "Tomcat@VERSION_MAJOR@.exe" + ${ReadFromConfigIni} $TomcatServiceManagerFileName "TomcatServiceManagerFileName" "Tomcat@VERSION_MAJOR@w.exe" + ${ReadFromConfigIni} $TomcatAdminEnable "TomcatAdminEnable" "0" + ${ReadFromConfigIni} $TomcatAdminUsername "TomcatAdminUsername" "" + ${ReadFromConfigIni} $TomcatAdminPassword "TomcatAdminPassword" "" + ${ReadFromConfigIni} $TomcatAdminRoles "TomcatAdminRoles" "" + FunctionEnd Function pageChooseJVM