Thema: Delphi Dienst aktualisieren

Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#16

Re: Dienst aktualisieren

  Alt 25. Feb 2009, 14:28
Zitat von Thomas83:
Dienst schaut alle x sekunden nach ob es ein update gibt (z.B. webseite, netzwerk etc.)
wenn es eine neue version gibt. Updater starten
updater beendet dienst
kopiert neue datei
startet den dienst

das müste eigentlich eine sinvolle Lösung sein, oder?
Kann es sein das du den Thread hier nicht vollständig gelesen hast?
Wenn der Dienst unter dem Konto Netzwerkdienst läuft kann er zwar das neue Update vom Netzwerk lesen aber das Konto Netzwerkdienst hat standardmäßig eben keine Rechte um im Windowsverzeichnis das update zu plazieren.

Meiner Meinung nach gibt es keine Möglichkeit unter Verwendung eines Kontos was entweder nur Rechte für das eine oder nur Rechte für das andere hat. Du braucht entweder ein Konto was für beides die Rechte hat oder du musst eben die Berechtigungen anpassen.

Ich weiß nicht um was für einen Dienst es sich genau handelt und ob es erlaubt ist das dieser nicht läuft wenn das Netzwerk nicht erreichbar ist. Ich würde (wenn der Dienst nicht zwangsläufig immer laufen muss sondern nur wenn Netzwerk vorhanden ist) die gesamte Logic des Dienstes in eine DLL auslagern und diese vom Dienst laden lassen. Dadurch kann der Dienst die Logic aktuallisieren ohne sich selbst beenden zu müssen und es bleibt die Möglichkeit das die Logic auf dem Letzlaufwerk liegen bleiben kann. Sozusagen kann der Dienst dann schauen welches die aktuellste DLL im Netzwerkpfad ist und diese Laden. Kommt eine aktuellere hinzu lädt er diese.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat