2017-01-11 4 views
1

Ich habe eine Knoten-App, die als Dienst auf Windows 10 ausgeführt werden muss. Ich habe Nssm verwendet, um die App als Dienst zu installieren.Node App als Windows-Dienst auf Windows 10

nssm install <service name> "node.exe" "index.js" 

Meine App verwendet sowohl Netzwerk als auch Datei-E/A. Ich habe sehr merkwürdiges Verhalten beobachtet, wo, wenn ich einen Kaltstart mache, der Dienst sagt, dass er läuft, aber es gibt keine Datei-E/A oder Netzwerkverbindung. Ich habe versucht, Abhängigkeiten und Trigger hinzuzufügen, aber das gleiche Ergebnis. Wenn ich den Dienst beim Anmelden neu starte, ist alles in Ordnung. Wenn ich einen Warmstart mache (Neustart statt Herunterfahren), ist alles in Ordnung. Ich habe sogar index.js simpliefied die folgende einfache Anwendung zu sein:

var fs = require('fs'); 
var stream = fs.createWriteStream("C:\\Test\\test.txt"); 

var interval = setInterval(function() { 
    stream.write((new Date()).toString()); 
}, 1000); 

Auch mit einer solchen einfachen app, merke ich, dass es kein Ergebnis in C: \ Test \ test.txt wenn Blatt eine Erkältung booten. Nur wenn ich den Dienst neu starte oder den Rechner neu starte (nicht heruntergefahren).

Ich suche nach einer Anleitung, was das Problem sein könnte.

Danke, ja

Antwort

0

OP, ich kann nicht zu Ihrem Knoten Paket sprechen, die Sie verwenden, aber ich habe vielen Erfolg und einfache Konfiguration habe qckwinsvc mit

Welches gefunden werden kann here on GitHub

+0

Hallo, ich statt NSSM gerade versucht qckwinsvc, und ich habe die gleichen Ergebnisse. Aus irgendeinem Grund (denke ich) stört etwas, dass node.exe als Dienst ausgeführt wird, und verhindert, dass es seinen Job macht. –

+0

Was zeigen Ihre Fehler- und Protokolldateien von qckwinsvc – Kyle

+0

Keine Fehler. Ereignisprotokoll sagte nur "Starten von C: \ Test \ index.js" –