EXE 服务 — 文档
EXE 服务 — 一款 GUI 工具,只需点击三下即可将任何 EXE 文件转换为 Windows 服务。通过 JSON 配置:启动参数、日志记录、自动重启以及用于通知(电子邮件/Slack/Telegram)的 JS 脚本。通过标准的 Windows 服务控制管理器(SCM)工作 — 无需包装器。适用于 Nginx、Syncthing、后端服务和监控的理想选择。
硬件要求
- CPU:现代 x64 或 x86 处理器
- 内存:最低 20 MB RAM
- 硬盘空间:安装文件需要 25 MB,并为包文件预留足够的磁盘空间
操作系统
- Windows 11
- Windows 10
- Windows 7(仅限包)
- Windows Server 2012/2012 R2/2016/2019/2022/2025
- Hyper-V Server 2019
- Windows Core 和 Nano Server 版本
要求
- 对于
svc_*函数 — 需要以管理员身份运行 - UTF-8 控制台(自动设置)
JsN
JsN.exe 是一个轻量级引擎,用于运行面向服务的 JavaScript 脚本。 它可以访问原生 Windows API:进程监控、服务管理、HTTP 请求和邮件发送。
目录
| 文件 | 描述 |
|---|---|
| 配置 | 配置格式、运行方式 |
| 进程 API | 进程监控与管理 |
| 服务 API | Windows 服务管理 |
| HTTP API | HTTP 请求(GET / POST) |
| 邮件 API | 邮件发送(SMTP) |
| 示例 | 现成示例:Discord、Slack、Telegram、监控 |
快速开始
1. 创建 JSON 配置文件
{
"scriptfile": "./my_script.js",
"arg": {
"process_name": "notepad.exe"
}
}
2. 编写脚本
// my_script.js
let f = proc_find(arg.process_name);
if (f.found) {
let cpu = proc_cpu(f.pid);
let ram = proc_ram(f.pid);
console.log("PID:", f.pid);
console.log("CPU:", cpu.cpu.toFixed(1) + "%");
console.log("RAM:", ram.ram_mb.toFixed(1) + " MB");
} else {
console.log("进程未找到");
}
3. 运行
JsN.exe my_config.json
按模块划分的可用函数
| 模块 | 函数 | 需要管理员权限 |
|---|---|---|
| 进程监控 | proc_find, proc_cpu, proc_ram, proc_alive, proc_service |
— |
| 进程管理 | proc_kill, proc_run |
— |
| Windows 服务 | svc_status, svc_start, svc_stop, svc_restart |
✓ |
| HTTP | http_get, http_post |
— |
| 邮件 | send_email |
— |
arg 变量
JSON 配置中 "arg" 字段的所有内容在脚本中作为全局对象 arg 可用:
{ "arg": { "host": "smtp.example.com", "port": 587 } }
console.log(arg.host); // "smtp.example.com"
console.log(arg.port); // 587
结果模式
所有函数都返回一个对象。成功时 error 为空字符串;失败时包含描述:
let r = proc_kill(1234);
if (r.ok) {
console.log("完成");
} else {
console.log("错误:", r.error);
}