Beenden eines Programms beim Herunterfahren verzögern

deadline

Erfahrenes Mitglied
Hi,
durch etliche Suchen habe ich bisher noch nichts gefunden. Verzeiht mir, falls ich ein Thema hier übersehen hab, das mein Problem schon behandelt.

Mein Programm:

Es ist ein Windowsdienst, der andere Programme als Dienst starten kann. Für ein bestimmtes Programm (Apache Geronimo Server) hab ich eine Funktion eingebaut, die den Server vor dem Beenden vom Dienst sauber herunterfährt.

Das funktioniert sehr gut, bis auf den Fall, wenn jemand Windows herunterfährt. Dann wird zwar die OnStop Methode aufgerufen, Windows beendet aber sofort den Java Prozess, welcher dann mit "Abnormal JVM shutdown detected". Der Geronimo Server fährt dann unter Umständen das nächste mal nicht mehr hoch (wegen einer Software, auf die ich keinen Zugriff habe).

Die java.exe wird regulär über process.start geöffnet und ich bräuchte nun eine Möglichkeit diesen Prozess vor Windows zu schützen, bis ich ihn selbst beendet habe. Funktionen wie RequestAdditionalTime (oder so ähnlich) gelten nur für meinen eigenen Prozess.

Falls noch Fragen offen sind fragt einfach. Ich bin in Probleme Beschreiben nicht besonders gut.

Schonmal Danke.

Grüße
Christian
 
Zurück