在 Windows 平台上,将普通应用程序(如 Node.js 脚本、Python 服务、Java Jar包等)作为后台服务运行,NSSM (Non-Sucking Service Manager) 一直是事实上的标准工具。然而,NSSM 停留在上个世纪的图形界面和繁琐的配置方式,常常让现代开发者感到头疼。
ServicesApp 是一款基于 C# 和 WinUI 3 构建的现代化 Windows 后台服务管理工具。它不仅继承了 NSSM 的核心能力——将任意可执行文件包装为系统服务,更提供了符合 Windows 11 设计语言的直观可视化界面,是 NSSM 的理想现代化替代品。

🌟 为什么选择 ServicesApp?
1. 🎨 现代化的 WinUI 3 体验
- 原生美感:完全采用 Windows 11 Fluent Design 风格,支持深色/浅色模式,视觉体验远超传统 Win32 工具。
- 直观交互:摒弃复杂的命令行参数和晦涩的配置弹窗,通过清晰的列表、按钮和表单完成所有操作。
- 托盘集成:支持最小化到系统托盘,随时快速访问,不占用任务栏空间。

2. ⚙️ 强大的服务管理能力
- 一键封装:轻松将任何
.exe、.bat、.py等可执行文件创建为 Windows 服务,设置启动类型、登录账户等。 - 全生命周期控制:支持服务的启动、停止、重启、删除等操作,状态实时刷新。
- 服务列表管理:清晰列出由 ServicesApp 创建的所有服务,避免与系统原生服务混淆。
- 日志查看:内置日志查看器,直接读取服务输出,无需手动查找日志文件,便于调试与监控。

3. 🌍 便捷的环境变量管理
- PATH 编辑:一键添加路径到系统 PATH 环境变量,解决服务运行时找不到依赖命令的问题。
- 快速入口:提供快捷按钮直接打开系统高级环境变量设置界面,方便进行更复杂的配置。
4. 🛡️ 安全与权限感知
- 自动提权:启动时自动检测管理员权限,若不足则请求 UAC 提权,确保服务创建与修改操作的合法性。
- 隔离管理:仅管理由本工具创建的服务,避免误操作系统关键服务,提升安全性。
🆚 ServicesApp vs. NSSM
| 特性 | NSSM | ServicesApp |
|---|---|---|
| 界面风格 | 经典 Win32 (过时) | 现代 WinUI 3 (Fluent) |
| 操作方式 | 多标签页弹窗,配置繁琐 | 简洁列表 + 表单,直观易用 |
| 日志查看 | 需手动重定向到文件后查看 | 内置实时日志查看器 |
| 环境变量 | 需在配置中手动设置 | 集成 PATH 管理与系统设置入口 |
| 技术栈 | C++ (古老) | C# + .NET + WinUI 3 |
| 维护状态 | 更新缓慢 | 活跃开发,适配现代 Windows |
🚀 快速开始
系统要求
- 操作系统:Windows 10 (22H2+) 或 Windows 11
- 运行时:.NET Desktop Runtime 8.0+ (通常已预装或随应用提示安装)
使用流程
- 创建服务
- 点击“新建服务”按钮。
- 选择要运行的可执行文件路径(如
node.exe或python.exe)。 - 填写参数(如
app.js或main.py)。 - (可选)配置工作目录、环境变量、重启策略等。
- 点击“创建”,服务即刻注册并可选立即启动。
- 管理服务
- 在主界面列表中查看所有已创建的服务。
- 右键或点击操作按钮,执行启动、停止、重启或删除。
- 点击“查看日志”,实时监控服务输出信息。
- 环境配置
- 若服务依赖特定命令行工具,点击“环境变量” -> “添加 PATH”,简化配置过程。
💡 适用场景
- 开发者:将本地开发的后端服务、数据库代理、消息队列消费者等部署为开机自启的后台服务。
- 运维人员:在小型服务器或开发机上快速部署和管理轻量级应用服务。
- 自动化脚本:将定时任务或监控脚本封装为服务,确保其稳定运行且易于管理。










