Service EXE — Documentation

Service EXE — une utilitaire GUI qui transforme n'importe quel fichier EXE en service Windows en trois clics. Configuration via JSON : paramètres de démarrage, journalisation, redémarrage automatique et scripts JS pour notifications (Email/Slack/Telegram). Fonctionne via le SCM Windows standard — aucun wrapper nécessaire. Idéal pour Nginx, Syncthing, backends et surveillance.

Matériel

  • CPU : processeur moderne x64 ou x86
  • Mémoire : min 20 Mo de RAM
  • Espace disque : 25 Mo pour les fichiers d'installation et espace suffisant pour les fichiers du package

Systèmes d'exploitation

  • Windows 11
  • Windows 10
  • Windows 7 (Packages uniquement)
  • Windows Server 2012/2012 R2/2016/2019/2022/2025
  • Hyper-V Server 2019
  • Éditions Windows Core et Nano Server

Prérequis

  • Pour les fonctions svc_* — exécuter en tant qu'administrateur
  • Console UTF-8 (définie automatiquement)

JsN

JsN.exe est un moteur léger pour exécuter des scripts JavaScript orientés services. Il a accès aux API Windows natives : surveillance de processus, gestion de services, requêtes HTTP et envoi d'emails.


Sommaire

Fichier Description
Configuration Format de config, exécution
API Processus Surveillance et gestion de processus
API Service Gestion des services Windows
API HTTP Requêtes HTTP (GET / POST)
API Email Envoi d'emails (SMTP)
Exemples Exemples prêts : Discord, Slack, Telegram, surveillance

Démarrage rapide

1. Créer une config JSON

{
  "scriptfile": "./my_script.js",
  "arg": {
    "process_name": "notepad.exe"
  }
}

2. Écrire un script

// 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("Processus non trouvé");
}

3. Exécuter

JsN.exe my_config.json

Fonctions disponibles par module

Module Fonctions Requiert admin
Surveillance de processus proc_find, proc_cpu, proc_ram, proc_alive, proc_service
Gestion de processus proc_kill, proc_run
Services Windows svc_status, svc_start, svc_stop, svc_restart
HTTP http_get, http_post
Email send_email

La variable arg

Tout le contenu du champ "arg" de la config JSON est disponible dans le script en tant qu'objet global arg :

{ "arg": { "host": "smtp.example.com", "port": 587 } }
console.log(arg.host);  // "smtp.example.com"
console.log(arg.port);  // 587

Modèle de résultat

Toutes les fonctions retournent un objet. En cas de succès, error est une chaîne vide ; en cas d'échec, elle contient une description :

let r = proc_kill(1234);
if (r.ok) {
    console.log("Terminé");
} else {
    console.log("Erreur :", r.error);
}