- Notifications
You must be signed in to change notification settings - Fork0
A wrapper executable that can run any executable as a Windows service, in a permissive license.
License
Kiryuumaru/winsw-modded
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
WinSW wraps and manages any application as a Windows service.
We are actively developing WinSW 3. Please refer to thev2 branch for previous version documentation.
See theproject manifest.
WinSW 3 can run on Windows platforms with .NET Framework 4.6.1 or later versions installed.For systems without .NET Framework, the project provides native 64-bit and 32-bit executables based on .NET 7.
More executables can be added upon request.
.NET Framework system requirements
Preinstalled since Windows 10, version 1511 and Windows Server 2016.
Installable since Windows 7 SP1 and Windows Server 2008 R2 SP1.
.NET 7 system requirements
Supported since Windows 10, version 1607, Windows Server (Core) 2012 R2 and Nano Server, version 1809.
Latest release and pre-release WinSW binaries are available onGitHub Releases.
Alternative sources:
- CI builds are available onAzure Pipelines.
- NuGet. (2.x)
- Maven packaging for executables, hosted by theJenkins project.Binaries are availablehere. (2.x)
- TakeWinSW.exe orWinSW.zip from the distribution.
- Writemyapp.xml (see theXML config file specification andsamples for more details).
- Run
winsw install myapp.xml [options]
to install the service. - Run
winsw start myapp.xml
to start the service. - Run
winsw status myapp.xml
to see if your service is up and running.
- TakeWinSW.exe orWinSW.zip from the distribution, and rename the.exe to your taste (such asmyapp.exe).
- Writemyapp.xml (see theXML config file specification andsamples for more details).
- Place those two files side by side, because that's how WinSW discovers its co-related configuration.
- Run
myapp.exe install [options]
to install the service. - Run
myapp.exe start
to start the service.
You write the configuration file that defines your service.The example below is a primitive example being used in the Jenkins project:
<service> <id>jenkins</id> <name>Jenkins</name> <description>This service runs Jenkins continuous integration system.</description> <envname="JENKINS_HOME"value="%BASE%"/> <executable>java</executable> <arguments>-Xrs -Xmx256m -jar "%BASE%\jenkins.war" --httpPort=8080</arguments> <logmode="roll"></log></service>
The full specification of the configuration file is availablehere.You can find more sampleshere.
WinSW is being managed by theXML configuration file.
Your renamedWinSW.exe binary also accepts the following commands:
Command | Description |
---|---|
install | Installs the service. |
uninstall | Uninstalls the service. |
start | Starts the service. |
stop | Stops the service. |
restart | Stops and then starts the service. |
status | Checks the status of the service. |
refresh | Refreshes the service properties without reinstallation. |
customize | Customizes the wrapper executable. |
dev | Experimental commands. |
Experimental commands:
Command | Description |
---|---|
dev ps | Draws the process tree associated with the service. |
dev kill | Terminates the service if it has stopped responding. |
dev list | Lists services managed by the current executable. |
Most commands require Administrator privileges to execute. WinSW will prompt for UAC in non-elevated sessions.
- Migrate to WinSW 3.x
- Configuration:
- Use cases:
Contributions are welcome!See thecontributing guidelines for more information.
WinSW is licensed under theMIT license.
About
A wrapper executable that can run any executable as a Windows service, in a permissive license.
Resources
License
Stars
Watchers
Forks
Packages0
Languages
- C#100.0%