Search code examples
nsis

How to install application as windows service using NSIS script?


I have written nsis script for my java project. I have successfully created a exe file using this nsis script. Final step of my installation process is installing my application as windows service using a batch file. I have installed successfully through command line using following code

"c:\program Files\program Files\test\bin\prunsrv.exe" //IS//servicename --Startup=auto --Jvm="Auto" --Classpath="%CLASSPATH%" --StartMode=jvm --StartClass=com.class.name  --StartParams start --StopMode=jvm --StopClass=com.class.name --StopParams stop

same commands I have executed through nsis script is not working well. I have tried the following code

Exec '"$INSTDIR\bin\prunsrv.exe" //IS//servicename --Startup=auto --Jvm="Auto" --Classpath="%CLASSPATH%" --StartMode=jvm --StartClass=com.class.name  --StartParams start --StopMode=jvm --StopClass=com.class.name --StopParams stop' 

$INSTDIR refer to this directory c:\program Files\test.


Solution

  • Use ExpandEnvStrings to expand %classpath% before the exec...