winsw实现windows服务

一、WinSW (Windows Service Wrapper) 简介与下载

  • 开源地址: https://github.com/winsw/winsw
  • 当前稳定版本: v2.11.0
  • 下载链接: https://github.com/winsw/winsw/releases/tag/v2.11.0
    • 根据服务器上安装的 .NET Framework 版本选择对应的可执行文件下载,例如 .NET Framework 4.x 环境下载 WinSW.NET4.exe
  • 配置文件示例:
    • sample-minimal.xml: 最小化配置示例。
    • sample-allOptions.xml: 包含所有可选配置参数的示例。

二、配置 WinSW

  1. 文件重命名与放置:

    • 将下载的 WinSW.NET4.exe (或其他版本) 重命名为具有明确含义的名称,例如 apiServer.exe(重要提示:此名称即为后续安装的 Windows 服务的可执行文件名,修改便于管理识别。)
    • 将配置文件 sample-minimal.xml 重命名为与可执行文件同名,但保留 .xml 后缀,例如 apiServer.xml
    • apiServer.exeapiServer.xml 两个文件放置到你的应用程序(如 JAR 文件或可执行文件)所在的目录中。
  2. 编辑配置文件 (apiServer.xml): 修改 apiServer.xml 文件,配置服务的基本信息。以下是一个核心配置示例:

    XML 复制代码
    <service>
      <id>apiServer</id>
      <name>apiServer</name>
      <description>API 服务程序</description>
      <startmode>Automatic</startmode>
      <executable>D:\WorkFolders\publish\MES.Server.WMS.WebAPI.exe</executable>
      <arguments></arguments>
    </service>
    • <id>: 安装 Windows 服务后的服务 ID。必须唯一。
    • <name>: 显示在 Windows 服务管理器中的服务名称。必须唯一。 通常与 <id> 保持一致即可。
    • <description>: 服务描述信息,可使用中文,作为备注说明。
    • <startmode>: 服务启动模式,Automatic 表示自动启动。
    • <executable>: 指定要运行的主命令或程序的全路径。例如,启动 Java 应用时,这里通常是 java.exe 的路径。
    • <arguments>: 传递给 <executable> 的命令参数。例如,启动 Spring Boot 应用时,这里可能是 -jar yourapp.jar 或其他 JVM 参数、类路径等。(请根据你的应用实际情况填写参数!)

三、安装与管理服务

  1. 管理员身份 打开命令提示符 (cmd)。

  2. 使用 cd 命令切换到 apiServer.exeapiServer.xml 所在的目录。

  3. 执行以下命令进行服务管理:

    命令 功能
    apiServer.exe install 安装服务
    apiServer.exe uninstall 删除服务
    apiServer.exe start 启动服务
    apiServer.exe stop 停止服务
    apiServer.exe restart 重启服务
    apiServer.exe status 查看服务状态
相关推荐
梦帮科技1 小时前
OpenClaw 桥接调用 Windows MCP:打造你的 AI 桌面自动化助手
人工智能·windows·自动化
春日见3 小时前
如何创建一个PR
运维·开发语言·windows·git·docker·容器
C++ 老炮儿的技术栈3 小时前
VS2015 + Qt 实现图形化Hello World(详细步骤)
c语言·开发语言·c++·windows·qt
浩浩测试一下4 小时前
内网---> WriteOwner权限滥用
网络·汇编·windows·安全·microsoft·系统安全
一个人旅程~4 小时前
Dell n4020双系统分区步骤和linux优化操作
linux·windows·电脑
love530love4 小时前
【高阶编译】Windows 环境下强制编译 Flash Attention:绕过 CUDA 版本不匹配高阶指南
人工智能·windows·python·flash_attn·flash-attn·flash-attention·定制编译
勾股导航5 小时前
Windows安装GPU环境
人工智能·windows·gnu
x***r1515 小时前
PhpStudy2018怎么用?完整安装与使用指南(新手必看)
windows
一品人家11 小时前
win32汇编使用GDI+入门教程之九
汇编·windows·win32汇编
小天源16 小时前
Error 1053 Error 1067 服务“启动后立即停止” Java / Python 程序无法后台运行 windows nssm注册器下载与报错处理
开发语言·windows·python·nssm·error 1053·error 1067