wingup ist ein Fork von gup4win/wingup von Don HO dem Programmier von Notepap++ auf GitHub. Es ist der automatische Update-Downloader von Notepad++. Notepad++ fand ich schon immer ziemlich gut und den automatischen Download, das anschließende automatische startet des neuen Setups ist eine schicke Lösung, die unkompliziert und einfach ist.
Deswegen wollte ich den dahinter stehenden Mechanismus gerne für eigene Software nutzen (LogMonitor und ComMonitor). Diese beiden Programme sind aber nicht in C++ geschrieben wie Notepad++ sondern es handelt sich um Wpf bzw. .Net Programme. Dadurch waren einige Änderungen nötig. WinGUp führt im Prinzip 4 Aktionen aus:

  • Es prüft ob eine neuere Version der Software – auf einer bestimmten Quelle im Internet – vorhanden ist und wenn das der Fall ist, dann:
  • lädt es das neue Setup herunter
  • schließt die aktuelle laufende Software
  • und starte anschließend das neue Setup

das Beenden der aktuelle laufende Software funktioniert bei Notpad++ über die registrierte Windows Klasse der Win32 Api. Unter .Net funktioniert das nicht. Aus diesem Grund habe ich WinGUp so geändert das es nach dem Text in der Titelleiste der Anwendung sucht z.B. LogMonitor_ und dann dieses Fenster schließt. Alles andere funktioniert so wie auch bei Notpad++. Für eventuell vorkommende Leerzeichen wird ein _ gesetzt, das dann später getauscht wird.

Den Fork findet man auf GitHub