EXE-palvelu — Dokumentaatio

EXE-palvelu — graafinen apuohjelma, joka muuttaa minkä tahansa EXE-tiedoston Windows-palveluksi kolmella napsautuksella. Määritä JSON-tiedoston avulla: käynnistysparametrit, lokitus, automaattinen uudelleenkäynnistys ja JS-skriptit ilmoituksille (Sähköposti/Slack/Telegram). Toimii standardin Windows SCM:n kautta — ei tarvita wrapper-ohjelmia. Ihanteellinen Nginxille, Syncthingille, taustajärjestelmille ja seurantaan.

Laitteisto

  • Suoritin: moderni x64- tai x86-suoritin
  • Muisti: vähintään 20 Mt RAM-muistia
  • Kiintolevytila: 25 Mt asennustiedostoille ja riittävästi levytilaa pakettitiedostoille

Käyttöjärjestelmät

  • Windows 11
  • Windows 10
  • Windows 7 (vain paketit)
  • Windows Server 2012/2012 R2/2016/2019/2022/2025
  • Hyper-V Server 2019
  • Windows Core- ja Nano Server -versiot

Vaatimukset

  • svc_*-funktioita varten — suorita järjestelmänvalvojana
  • UTF-8-konsoli (asetetaan automaattisesti)

JsN

JsN.exe on kevyt moottori JavaScript-skriptien suorittamiseen palveluihin suunnattuna. Sillä on pääsy natiiveihin Windows-rajapintoihin: prosessiseuranta, palvelunhallinta, HTTP-pyynnöt ja sähköpostin lähetys.


Sisällysluettelo

Tiedosto Kuvaus
Määritys Määritysten muoto, suorittaminen
Prosessi-rajapinta Prosessien seuranta ja hallinta
Palvelu-rajapinta Windows-palveluiden hallinta
HTTP-rajapinta HTTP-pyynnöt (GET / POST)
Sähköposti-rajapinta Sähköpostin lähetys (SMTP)
Esimerkit Valmiit esimerkit: Discord, Slack, Telegram, seuranta

Pika-aloitus

1. Luo JSON-määritys

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

2. Kirjoita skripti

// 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) + " Mt");
} else {
    console.log("Prosessia ei löytynyt");
}

3. Suorita

JsN.exe my_config.json

Moduulien saatavilla olevat funktiot

Moduuli Funktiot Vaati järjestelmänvalvojan
Prosessiseuranta proc_find, proc_cpu, proc_ram, proc_alive, proc_service
Prosessinhallinta proc_kill, proc_run
Windows-palvelut svc_status, svc_start, svc_stop, svc_restart
HTTP http_get, http_post
Sähköposti send_email

arg-muuttuja

Kaikki JSON-määrityksen "arg"-kentän sisältö on saatavilla skriptissä globaalina objektina arg:

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

Tulospohja

Kaikki funktiot palauttavat objektin. Onnistuessa error on tyhjä merkkijono; epäonnistuessa se sisältää kuvauksen:

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