Overview
Commons Daemon http://jakarta.apache.org/commons/daemon/index.html can be used to run executables or java applications as windows service or UNIX daemon.
FAQ
Is it possible to use the commons daemon to run a executable as Windows service?
Yes, not only java applications can be installed as windows service. Similar to the Srvany.exe tool any other exe can be used.
Sample: Proxomitron (http://www.proxomitron.info/) as windows service
Installation:
prunsrv //IS//PROXO --DisplayName="Proxomitron Proxy" --Description="Proxomitron Web Proxy" --StartImage=c:\proxomitron\proxomitron.exe --StartPath=c:\proxomitron --Type=interactive --LogLevel=DEBUG --LogPath=c:\proxomitron\logs --LogPrefix=procrun.log --Startup=manual --StdOutput=c:\proxomitron\logs\stdout.log --StdError=c:\proxomitron\logs\stderr.log
Uninstallation:
prunsrv //DS//PROXO
Can I use the commons daemon to install (register) a Windows service?
Yes a Windows service can be installed/uninstalled using prunsrv. See the following example to install the a Windows Service called SCNService:
prunsrv //IS//SCNService --Install=%CD%\SCNService.exe --Startup=manual --DisplayName=SCNService
Hint: prunsrv will add "//RS//SCNService" to the ImagePath, which will be passed to SCNService.exe when the Windows SCM (Service Control Manager) is staring the service. Most Services will ignore such command line arguments, but you should check this with your service just to make sure.
Can I use the common daemon to start a Windows service?
I can stop a windows service with //SS//ServiceName. As I tried to start it again with //RS// nothing happend?
UNIX Return codes
- 0 = Successful operation
- 1 = ? (When used for starting tomcat it starts but returns this...?)
...