Laden...

C# WPF Auto Updater

Erstellt von FlattiCo vor 2 Jahren Letzter Beitrag vor 2 Jahren 856 Views
F
FlattiCo Themenstarter:in
5 Beiträge seit 2021
vor 2 Jahren
C# WPF Auto Updater

Liebe Community

Ich habe gemeinsam mit meinen Bruder eine App Entwickelt welche bereits nach einer Woche sehr viele Benutzer hatte. Ich möchte meinen Kunden nun einen noch einen Besseren Umgang bieten indem sich die App Automatisch updatet. Die läuft über mehrere 'Fenster' in WPF. Ich habe bereits in die App Integriert, das die App ein Meldung hinterlegt das ein neues Update online ist. Was mir aber daran nicht gefällt ist, das der Kunde die App deinstallieren muss und neu installieren sollte. Ich habe einige Zeit investiert in versuche jedoch klappte dies nicht wirklich.
Ich habe etwas gelesen über saveFileDialog womit etwas abgespeichert werden kann. Jedoch enthält WPF einen openFileDialog ebenso womit ich noch nie wirklich gearbeitet habe.

Die App lässt sich durch einen Installer auf den Rechner installieren und läuft durch eine PHP Schnittstelle mithilfe WebClients über eine MySql Datenbank.
Hat jemand eine gute Erklärung wie ich dieses Problem lösen kann?

Vielen Dank schon im vorraus für eure Unterstützung.

LG
Fabian

T
2.219 Beiträge seit 2008
vor 2 Jahren

Normalerweise sind Updater und die eigentliche Anwendung getrennte Anwendungen.
Gerade damit der Updater die Anwendungen auch ohne Probleme aktualisieren kann.
Ich würde z.B. anstelle der eigentlichen Anwendung einen Updater starten.
Dieser prüft erst ob es eine neue Version gibt und updatet diese dann.
Danach sollte er einfach die Anwendung starten.
Diese muss sich dann nicht um den Update Prozess o.ä. kümmern.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

F
FlattiCo Themenstarter:in
5 Beiträge seit 2021
vor 2 Jahren

Mit dem Updater welcher Extern läuft, muss ich dann nur die App Löschen und die neue App installieren?

T
2.219 Beiträge seit 2008
vor 2 Jahren

Hängt von der bisherigen Umsetzung deiner App ab.
Im einfachsten Fall kannst du die Dateien einfach überschreiben ohne was zu löschen und dann neuinstallieren.
Hier kannst du dann einen entsprechenden Fortschritt auch ohne großen Aufwand umsetzen.

T-Virus

Developer, Developer, Developer, Developer....

99 little bugs in the code, 99 little bugs. Take one down, patch it around, 117 little bugs in the code.

F
FlattiCo Themenstarter:in
5 Beiträge seit 2021
vor 2 Jahren

Ich habe es bereits geschafft das die neue Version auf dem Rechner installiert wird, wie kann ich Programme von einem Rechner deinstallieren?
Der Installer ist eine separate App auf den Rechner.

J
641 Beiträge seit 2007
vor 2 Jahren

Da gibts doch schon zahlreiche Nuget Packages dafür, bspw: https://github.com/ravibpatel/AutoUpdater.NET

cSharp Projekte : https://github.com/jogibear9988

F
FlattiCo Themenstarter:in
5 Beiträge seit 2021
vor 2 Jahren

Ich verwende sehr ungern NuGet Packete da ich mit dieser Software Lizenzverkaufe und die verwendung von Paket zu Paket verschieden ist. Ich habe mir nun selbst einen Updater programmiert.
Habe viel über ClickOnce gelesen. Würde es die Daten verschlüsselt versenden würde ich ClickOnce verwenden, tuts aber nicht.

Ich habe grundsätzlich das gleiche Prinzip wie ClickOnce auf eigene Faust Programmiert, nur das die Daten verschlüsselt werden.
Danke dennoch für deine Antwort!

309 Beiträge seit 2020
vor 2 Jahren

Ich habe grundsätzlich das gleiche Prinzip wie ClickOnce auf eigene Faust Programmiert, nur das die Daten verschlüsselt werden.

Ist ja prinzipell immer die beste Vorgehensweise, Security-relevante Module, Verschlüsslung,... selbst zu entwickeln...

Das könnte evtl. noch interessant sein: Securing ClickOnce Applications - Visual Studio