A wrapper executable that can run any executable as a Windows service, in a permissive license.
Windows 服务封装器.

NextTurn 80323eaab8 Disable undocumented argument concatenation 5 yıl önce
.github d74e224593 Add a Dependabot configuration (#558) 5 yıl önce
docs 1b20d0db12 Revise docs for 3.0.0-alpha.1 (#587) 5 yıl önce
eng b419e9c8e2 Publish self-contained archives 5 yıl önce
samples bbb3cd578c Reorganize projects 5 yıl önce
src 80323eaab8 Disable undocumented argument concatenation 5 yıl önce
.gitattributes 69933f3179 Add .gitattributes 5 yıl önce
.gitignore ea6cb8062a Remove strong name signing 5 yıl önce
CONTRIBUTING.md f43e3bb6ab Rename docs for SEO 5 yıl önce
Directory.Build.props 35af3bf78d Standardize coding styles 5 yıl önce
LICENSE.txt 5a6f3b9304 Update license for GitHub 5 yıl önce
MANIFEST.md f0ec34ba63 Clean up documentation 5 yıl önce
README.md 1b20d0db12 Revise docs for 3.0.0-alpha.1 (#587) 5 yıl önce
WinSW.nuspec f43e3bb6ab Rename docs for SEO 5 yıl önce

README.md

Windows Service Wrapper in a permissive license

Github All Releases GitHub Release NuGet Build Status Deployment Status Gitter License

WinSW is an executable binary, which can be used to wrap and manage a custom process as a Windows service. Once you download the installation package, you can rename WinSW.exe to any name, e.g. MyService.exe.

We are actively developing WinSW v3. Please refer to the v2 branch for previous version documentation.

Please help us prioritize items by voting or commenting on the issues!

Why?

See the project manifest.

Supported platforms

WinSW offers executables for .NET Framework 2.0, 4.0 and 4.6.1. It can run on Windows platforms which have these versions of .NET Framework installed. For systems without .NET Framework, the project provides native 64-bit and 32-bit executables based on .NET Core.

More executables can be added upon request.

Download

WinSW binaries are available on GitHub Releases and NuGet.

Alternative sources:

Usage

WinSW is being managed by the XML configuration file.

Your renamed WinSW.exe binary also accepts the following commands:

  • install

Install the service to Windows Service Controller. This command requires some preliminary steps described in the Installation guide.

  • uninstall

Uninstall the service. The opposite operation of above.

  • start

Start the service. The service must have already been installed.

  • stop

Stop the service.

  • stopwait

Stop the service and wait until it's actually stopped.

  • restart

Restart the service. If the service is not currently running, this command acts like start.

  • status

Check the current status of the service.

  • This command prints one line to the console.
    • NonExistent indicates the service is not currently installed
    • Started to indicate the service is currently running
    • Stopped to indicate that the service is installed but not currently running.

Most commands require Administrator privileges to execute. Since 2.8, WinSW will prompt for UAC in non-elevated sessions.

Documentation

User documentation:

Developer documentation:

Contributing

Contributions are welcome! No Contributor License Agreement is needed, just submit your pull requests. See the contributing guidelines for more information.

License

WinSW is licensed under the MIT license.