Entwickler-Ecke
Windows API - Mehrere Serviceanwendungen
MagicTom - Mo 25.08.08 13:07
Titel: Mehrere Serviceanwendungen
Hallo zusammen,
ich möchte gerne mehrere (z.B. 3 Stck) Serviceanwendungen auf einem Server installieren. Dann sollten zwei davon warten bis der dritte gestartet ist (DB mit Daten). Einzeln laufen alle Dienste perfekt, nur nach dem booten schießt es zwei von drei ab. Also sollte es so laufen das erst der wichtigste startet (DB) und dann alle anderen...
Habt Ihr eine Idee oder einen Denkanstoss für mich?
Vielen Dank
Thomas
Xentar - Mo 25.08.08 13:11
- Dienste haben "Abhängigkeiten". Ich weiß nun nicht, ob das nur die Installation betrifft, oder auch die Startreihenfolge.
- Dienste 1 und 2 "pollen" zyklisch (z.B. mit einer TCP Verbindung), ob Dienst 3 schon da ist. Wenn nicht, einfach abwarten, statt sich zu beenden.
MagicTom - Mo 25.08.08 14:19
Danke für Deine Antwort!
Und genau diese Abhängigkeiten würde ich gerne nutze, denn wenn ich einfach nur warte:
Delphi-Quelltext
1: 2: 3:
| if not ServiceRunning(nil, 'DBServer') then WaitFor(5000) else |
dann bekomme ich Probleme nach der eingestellten Zeit.
Hat jemand eine Ahnung von den Abhängigkeiten?
Im voraus schon Vielen Dank!
Thomas
Moderiert von
Narses: Highlight- durch Delphi-Tags ersetzt
Fighter#1 - Mo 25.08.08 15:15
Wo ist das Problem mit ner Schleife zu warten
Delphi-Quelltext
1:
| while(ServiceRunning(nil, 'DBServer')!=true) do WaitFor(100); |
Damit wartet er doch bis der Dienst gestartet ist!?
Moderiert von
Narses: Delphi-Tags hinzugefügt
MagicTom - Mo 25.08.08 16:45
Hallo,
das mit:
Delphi-Quelltext
1:
| while(ServiceRunning(nil, 'DBServer')!=true) do WaitFor(100); |
war nicht schlecht, allerdings benutze ich den Nexus DB Server und der möchte nur starten wenn ich einen Benutzernamen und Passwort bei den Eigenschaften hinterlege. Also startet der zweite Dienst nicht. Habt ihr noch weitere Vorschläge?
Natürlich könnte ich alles in eine Anwendung packen, aber dann bin ich nicht so flexibel. Wenn man ein Teil der Anwendung nicht läuft, kann man mal eben den Dienst neu starten, der Rest läuft weiter...
lg.
Thomas
Moderiert von
Narses: Delphi-Tags hinzugefügt
MagicTom - Mi 27.08.08 08:15
Titel: Kurze Rückmeldung
Hallo an alle die geantwortet haben!
Ich habe nun folgendes gemacht:
Delphi-Quelltext
1:
| while(ServiceRunning(nil, 'DBServer')!=true) do WaitFor(100); |
eingefügt und beim Dienst die Abhängigkeiten mit dem nxDBServer hergestellt. Geht in der IDE.
Nun rennt alles wie gewünscht ;-)
Vielen Dank
Thomas
Xentar - Mi 27.08.08 08:51
Titel: Re: Kurze Rückmeldung
MagicTom hat folgendes geschrieben: |
Delphi-Quelltext 1:
| while(ServiceRunning(nil, 'DBServer')!=true) do WaitFor(100); |
|
Sowas nimmt Delphi an? Merkwürdig.. ;)
MagicTom - Mi 27.08.08 12:47
;-) natürlich nicht so :lol:
lg.
Tom
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!