Registriert seit: 7. Jun 2008
708 Beiträge
Delphi 10.2 Tokyo Professional
|
AW: Programm aktualisieren (Codehilfe)
5. Jul 2014, 00:18
Korrekterweise solltest du eine externe Anwendung den Job erledigen lassen, die Hauptanwendung zu aktualisieren. Die Hauptanwendung kann zwar das Update herunterladen, aber die neue Version übernehmen sollte eine extra Anwendung machen. Dann erledigt sich das wohl auch mit dem "mal gehts und mal gehts nicht".
Weil so wie du's jetzt machst, mag es zwar (manchmal) funktionieren, ist aber trotzdem falsch. Eine Anwendung sollte sich nicht selbst löschen oder umbenennen.
Also: Hauptanwendung startet "Updater.exe" (mit Adminrechten!) und schließt sich selbst. "Updater.exe" wartet darauf, dass sich "Hauptanwendung.exe" beendet hat (nicht mehr in der Task-Liste ist), lädt die neue Version herunter, löscht Hauptanwendung.exe, kopiert dann die neue .exe und startet wieder die (neue) Hauptanwendung.exe (nur mit Benutzerrechten).
|