Ich habe einen Windows-Dienst unter Windows Server 2008 R2, den ich mit instsrv
der srvany.exe
ausführbaren Datei eingerichtet habe. Die drei Werte im Parameters
Schlüssel werden wie folgt eingestellt:
AppDirectory C:\selenium-grid
Application C:\ant\bin\ant.bat
AppParameters launch-hub
Der Dienst wird ordnungsgemäß gestartet und beim Starten werden zwei Java-Prozesse im Task-Manager angezeigt (ein Prozess ist ant und der andere ist eine von ant gestartete Java-Klasse). Wenn ich den Dienst beende, ändert sich der Status des Dienstes in gestoppt, aber die beiden Java-Prozesse verschwinden nicht.
Wie kann ich die Prozesse stoppen, wenn ich den Dienst beende?
srvany.exe
. Ich habe diese Klarstellung zu der Frage hinzugefügt.Antworten:
Leider saugt SRVANY. Es gibt eine Alternative, den "Non-Sucking Service Manager" (NSSM) - er beendet Ihre Anwendung und alle untergeordneten Prozesse auf dem Service-Stopp-Signal.
quelle
Leider bietet srvany.exe keine Methode zum Beenden der Prozesse, wenn der Dienst gestoppt wird. Grundsätzlich können Sie also (a) nach einer Alternative eines Drittanbieters suchen, die diese Funktionalität bietet, oder (b) eine solche schreiben ein Ersatz selbst.
Vielleicht kennt ein anderer Leser eine gute Alternative von Drittanbietern, oder Sie haben Glück mit einer Google-Suche. Wenn Sie sich für Option (b) entscheiden, kann ich Ihnen möglicherweise einen Vorsprung verschaffen. Schreiben Sie mir eine E-Mail, wenn Sie möchten - meine Adresse befindet sich in meinem Profil. Oder Sie können eine Frage an StackOverflow senden.
quelle
Srvany weist einige bekannte Mängel auf, von denen eine den von ihm gestarteten Prozess nicht beendet .
Lesen Sie auf dieser Seite unbedingt weitere potenzielle Probleme, indem Sie Srvany mit AlwaysUp (unserer kommerziellen Anwendung, mit der alle Teilprozesse wie erwartet geschlossen werden) vergleichen, um die Überraschungen zu verringern ...
quelle