AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Kann ein Dienst sich selber neu starten?
Thema durchsuchen
Ansicht
Themen-Optionen

Kann ein Dienst sich selber neu starten?

Ein Thema von Jumpy · begonnen am 18. Feb 2013 · letzter Beitrag vom 18. Feb 2013
Antwort Antwort
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.737 Beiträge
 
Delphi 6 Enterprise
 
#1

Kann ein Dienst sich selber neu starten?

  Alt 18. Feb 2013, 09:46
Hallo,

ich habe einen Dienst, der manchmal (nicht reproduzierbar) einen Teil seiner Aufgaben nicht mehr erledigt, d.h. eine Komponente arbeitet dann nicht mehr. Ich kann das nicht abfangen, da ich nicht genau weiß, woher das kommt. Die Komponente kommuniziert asynchron per FTP mit einem anderen fremden Programm und bei irgendeiner Konstellation in diesem anderen Programm verabschiedet sich bei mir die FTP-Komponente. Vermute ich. Sie ist noch ansprechbar, es wird noch geloggt, es hängt sich nichts auf, aber die Kommunikation findet nicht mehr statt.
Erkenne ich diesen Zusatand im Log und starte den Diesnt per Hand neu, läuft wieder alles.

Da ich diesen Zustand (wenn auch leider nicht die Ursache, was ja besser wäre) auch im Programm erkennen könnte, wäre es ggf. eine Möglichkeit, dass sich der Dienst selber neu startet. Frage ist nur: Geht das? Wenn ja wie?
Ralph
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Kann ein Dienst sich selber neu starten?

  Alt 18. Feb 2013, 10:13
Hallo,

würde es nicht ausreichen den ftp Thread neu zu starten?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#3

AW: Kann ein Dienst sich selber neu starten?

  Alt 18. Feb 2013, 10:42
Falls sie Lösung von Klaus nicht reichen sollte und Du das Problem nicht bei der Wurzel zu packen bekommst, kannst Du wenn Dein Dienst noch "lebt" diesen ein Programm starten lassen welcher den Dienst neu startet. Ansonsten einen anderen Dienst als "Watchdog" aufsetzen.
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Kann ein Dienst sich selber neu starten?

  Alt 18. Feb 2013, 13:27
Jenes andere Programm heißt im Idealfall Windows - wenn der Service mit ner Exception kracht (kann man ja krachen lassen) und das Error Handling im Service Manager entsprechend eingestellt ist, kann man den Service von diesem automatisch neustarten lassen (siehe die Failure Actions in den Eigenschaften des Services im Tab Recovery).
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.737 Beiträge
 
Delphi 6 Enterprise
 
#5

AW: Kann ein Dienst sich selber neu starten?

  Alt 18. Feb 2013, 16:30
Hallo,
und danke.

Klaus hat vermutlich recht. Nur weil ich als User den Dienst neu starten muss, um den Thread neu zu starten, muss das Programm das ja nicht auch so machen, es kommt ja hoffentlich direkt an den Thread.

Hab das mal entsprechend umgesetzt und schau mal was die nächste Woche so passiert.

Wenn das nix gibt, versuch ich mal die anderen Vorschläge und starte tatsächlich den Dienst neu.
Ralph
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:05 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz