Windows Service Wrapper

Posted rongfengliang-荣锋亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows Service Wrapper相关的知识,希望对你有一定的参考价值。

This project creates a wrapper executable that can be used to host any executable as an Windows service.

Download

The binaries are available here for download.

Usage

During your development...

  1. Take winsw.exe from the distribution, and rename it to your taste (such as myapp.exe)
  2. Write myapp.xml (see Configuration Syntax for more details)
  3. Place those two files side by side when you deploy your application, because that‘s how winsw.exe discovers its configuration.

At runtime...

  • To install a service, run myapp.exe install
  • To start a service, run myapp.exe start
  • To stop a service, run myapp.exe stop
  • To restart a service, run myapp.exe restart
  • To uninstall a service, run myapp.exe uninstall

When there‘s a problem, these commands also report an error message to stderr. On a successful completion, these commands do no produce any output and exit with 0.

In addition, you can also run myapp.exe status to have it print out the current status of the service to stdout. Again, any error encountered during the processing would cause output to be reported to stderr.

All these commands use the same set of exit code to indicate its result.

Deferred File Operations

To support self updating services, winsw offers a mechanism to perform file operations before a service start up. This is often necessary because Windows prevents files from overwritten while it‘s in use.

To perform file operations, write a text file (in the UTF-8 encoding) at myapp.copies (that is, it‘s in the same directory asmyapp.xml but with a different file extension), and for each operation add one line:

  • To move a file, write "src>dst". If the ‘dst‘ file already exists it will be overwritten.

The success or failure of these operations will be recorded in the event log.

以上是关于Windows Service Wrapper的主要内容,如果未能解决你的问题,请参考以下文章

windows service调用FindWindow 怎么不行

windows service调用FindWindow 怎么不行

使用Windows Service Wrapper快速创建一个Windows Service

使用Windows Service Wrapper快速创建一个Windows Service 如nginx

windows无法启动Diagnostic policy service服务

Chef windows_service资源 - 配置现有服务