![]() |
Programmupdate unter Vista, wie machen ?
Hallo #,
ich habe bei meinem Programm ein automatisches Update mehrerer Rechner eines Netzwerkes wie folgt gelöst: - auf dem Server wird die neueste Version kopiert auf ein freigegebenen Ordner - die Clients starten nicht die eigentlich Exe, sondern ein kleines Hilfsprogramm - dass kuckt auf dem Server nach, ob eine neue Version vorliegt (Versionsnummer in den Resorucen), wenn ja wird diese kopiert und gestartet, wenn nicht, wird die aktuelle exe gestartet Das klappt soweit ganz gut, abgesehen vom Schreibschutz des Programme-Ordners unter XP (den ich dann immer rausnehme bei meinem Verzeichnis...) Das klappt unter Vista natürlich nicht mehr. MS hat hier 2 Wege vorgeschlagen. 1. Ein Dienst auf den Clients, der das Update durchführt (UAC-Benutzerkontensteuerung wird dort nicht benutzt) 2. MPP-Dateien (oder so ähnlich) Das sind Patch-Dateien zu MSI. Die eigentliche MSI muss dann aber ein gültiges Zertifikat aufweisen. Punkt 2 wird empfohlen, weil ja ein Dienst wieder Lücken auressit. Da meine Exe über Installshield installiert wird, ich von MPP keine Ahnung habe. In Dienstprogrammierung hatte ich mich mal eingearbeitet, war mit der Hilfe von hier ( ;) ) nicht so schwer. Wie würde denn die Kommunikation aussehen mit dem Dienst aussehen ? Übergabe wäre Zielpfad (c:\programme\meineapp\), es könnte aber z.B. ja auch d: sein. Ausserdem der Quellpfad (also der Netzwerkpfad). Die Update muss auch mehrere Daten übertragen können (hintereinanderweg). Wie macht man so eine Kommunikation ? Danke im voraus Heiko |
Re: Programmupdate unter Vista, wie machen ?
Im Prinzip hast Du schon alles was Du benötigst.
Das, was Dein Zusatzprogramm macht (nachgucken ob eine neue Version da ist & ggf. kopieren) packst Du in den Dienst. Beim Programmstart schickst Du eine Anfrage an den Dienst (via ![]() Wie gesagt: Du brauchst eigentlich nur die Nachrichten: "Ist was neues da?" - ja/nein und wenn ja warten auf "Ist fertig kopiert!". Und dazu eben die named pipes. |
Re: Programmupdate unter Vista, wie machen ?
Würde es das ganze nicht vereinfachen, wenn du für das Update eine eigene Exe startest, welche im Manifest 'requiresAdministrator' stehen hat?
Das Update könnte dann nur von Admins ausgeführt werden (verursacht natürlich auch eine UAC-Abfrage für das Update, falls UAC aktiv ist). |
Re: Programmupdate unter Vista, wie machen ?
Gibt es bei Vista eigentlich immernoch keine Softwareverteilung im System? // Martin
|
Re: Programmupdate unter Vista, wie machen ?
Hallo,
das Update soll ohne UAC-Eingriff laufen, die Nutzer haben genug anderes zu tun, und wenn der Admin zu jedem Rechner rennen soll fürs Update, kann ich das gleich vergesen. > Martin < in der neuen dot.net steht was dazu Desired State Initiative (S17/28) ist aber immer noch nicht so richtig fertsch Heiko |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz