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);
}