Programma updater

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Beste mede DevSchuurders;
wat gebruiken jullie als jullie een programma automagisch willen updaten? Ik gebruik momenteel de gebruiker zelf (= menu-item dat de website opent) maar ik wil eigenlijk in een aantal programma's van me een auto updater steken. Dit om het gebruiksgemak te vergroten.

In het verleden had ik zelf een tooltje geschreven maar als ik het nu wil gebruiken moet ik het herschrijven want het is nog in vb6.
Ik ben zelf op zoek gegaan naar een bestaand tooltje en kwam op WinGUp uit, nu is dit wel een leuk programma en klein maar ik kan daar geen zip/rar mee uitpakken en command line kent ie niet, dus eerst een xml aanmaken en dan pas het programma uitvoeren.

Hoe doen jullie het?

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Zeg
  • Registratie: Juli 2012
  • Laatst online: 21-09 16:44

Zeg

Ligt eraan voor welk OS en welke programmeertaal. Ik zelf gebruik voor mijn persoonlijke C# projecten ClickOnce deployment.

In essentie is een updater niet moeilijker dan een check doen op de huidige versie en dat vergelijken met een versie op een server, en als die verschillen een bestand downloaden van een vooraf gedefinieerde URL, of die URL uit de response van de server halen en het gedownloade bestand vervolgens uitvoeren.

Je dient dan natuurlijk wel rekening te houden met MITMs (en andere security aspecten), wat recentelijk nog een issue was met een aantal updaters.

Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Voor .net gebruik ik Squirrel (https://github.com/Squirrel/Squirrel.Windows) voor zowel de installatie als updates. Werkt erg makkelijk.

Zie ook https://channel9.msdn.com...apps-the-way-it-should-be

[ Voor 35% gewijzigd door Serpie op 26-07-2016 08:20 ]


Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Zeg schreef op maandag 25 juli 2016 @ 21:28:
Ligt eraan voor welk OS en welke programmeertaal. Ik zelf gebruik voor mijn persoonlijke C# projecten ClickOnce deployment.

In essentie is een updater niet moeilijker dan een check doen op de huidige versie en dat vergelijken met een versie op een server, en als die verschillen een bestand downloaden van een vooraf gedefinieerde URL, of die URL uit de response van de server halen en het gedownloade bestand vervolgens uitvoeren.

Je dient dan natuurlijk wel rekening te houden met MITMs (en andere security aspecten), wat recentelijk nog een issue was met een aantal updaters.
Owja Momenteel nog windows maar in de toekomst misschien andere OS'sen en VB.NET
Serpie schreef op dinsdag 26 juli 2016 @ 08:19:
Voor .net gebruik ik Squirrel (https://github.com/Squirrel/Squirrel.Windows) voor zowel de installatie als updates. Werkt erg makkelijk.

Zie ook https://channel9.msdn.com...apps-the-way-it-should-be
Afbeeldingslocatie: https://i0.wp.com/yourdogsfriend.org/wp-content/uploads/2013/11/squirrel.jpg
Eens bekijken

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Ventieldopje
  • Registratie: December 2005
  • Laatst online: 19:53

Ventieldopje

I'm not your pal, mate!

Damic schreef op dinsdag 26 juli 2016 @ 18:20:
[...]
Owja Momenteel nog windows maar in de toekomst misschien andere OS'sen en VB.NET

[...]
[afbeelding]
Eens bekijken
Met als ander OS bedoel je OSX denk ik, want onder linux zie je praktisch geen auto updaters omdat alles via de package managers loopt (apt, yum etc.). Je deb/rpm updaten is dan genoeg om voor iedereen die update beschikbaar te stellen.

Squirrel is er ook voor OSX zie ik, anders heb je ook nog het veel gebruikte Sparke: https://sparkle-project.org/.

www.maartendeboer.net
1D X | 5Ds | Zeiss Milvus 25, 50, 85 f/1.4 | Zeiss Otus 55 f/1.4 | Canon 200 f/1.8 | Canon 200 f/2 | Canon 300 f/2.8


Acties:
  • 0 Henk 'm!

  • johnkeates
  • Registratie: Februari 2008
  • Laatst online: 04-07 16:30
Eigenlijk heb je alleen nog maar in-app updaters nodig bij software die je niet via systeem-standaard package managers distribueert. Dat betekent voornamelijk oudere Windows versies, verder heeft elke OSX/Linux/Unix/BSD packages, updates en distributie gewoon ingebouwd.

Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Dat is ook weer waar.

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Ventieldopje
  • Registratie: December 2005
  • Laatst online: 19:53

Ventieldopje

I'm not your pal, mate!

johnkeates schreef op dinsdag 26 juli 2016 @ 19:41:
Eigenlijk heb je alleen nog maar in-app updaters nodig bij software die je niet via systeem-standaard package managers distribueert. Dat betekent voornamelijk oudere Windows versies, verder heeft elke OSX/Linux/Unix/BSD packages, updates en distributie gewoon ingebouwd.
Bij Mac OSX zie je voor apps die niet via brew/app store lopen toch wel regelmatig dat ze Sparkle gebruiken als self-updater :) Onder linux gebeurt het vrijwel niet eigenlijk.

www.maartendeboer.net
1D X | 5Ds | Zeiss Milvus 25, 50, 85 f/1.4 | Zeiss Otus 55 f/1.4 | Canon 200 f/1.8 | Canon 200 f/2 | Canon 300 f/2.8


Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Ik ben Squirrel aan't bekijken en dat heeft 2 nadelen voor mij:
* initieel grote downloads. De installatie bestanden zijn momenteel +-450kB en ik vermoed dat squirrel ze groter aanmaakt.
* Vanaf .Net 4.5; voor sommige nieuwe programma's is dat niet zo'n probleem maar ik heb 1 programma dat nog 2.0 gebruikt (gewoon omdat het kan)

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Lethalis
  • Registratie: April 2002
  • Niet online
Damic schreef op vrijdag 29 juli 2016 @ 22:36:
Ik ben Squirrel aan't bekijken en dat heeft 2 nadelen voor mij:
* initieel grote downloads. De installatie bestanden zijn momenteel +-450kB en ik vermoed dat squirrel ze groter aanmaakt.
* Vanaf .Net 4.5; voor sommige nieuwe programma's is dat niet zo'n probleem maar ik heb 1 programma dat nog 2.0 gebruikt (gewoon omdat het kan)
Zijn dit echte argumenten of excuses? :)

Wij hebben op kantoor maar 1 reden gehad om niet te upgraden naar .NET 4.5 (vanaf 4.0) en dat is dat we nog klanten hebben die Windows XP draaien (ja, je leest het goed).

Gelukkig worden deze klanten steeds schaarser en kunnen we binnenkort upgraden (die computers uit het jaar nul gaan toch een keer stuk :+ ).

450kB is niks? Wij versturen updates van 30MB. Zelfs bij een 2mbit lijntje komt dat in 2 minuten binnen.

PS:
Wij hebben overigens zelf een update programma'tje gemaakt. In ons geval doet het meer dan alleen het programma updaten. Er wordt ook een SQL database bijgewerkt naar een nieuw schema, gecontroleerd of er nog andere instanties op andere pc's draaien, etc.

[ Voor 12% gewijzigd door Lethalis op 30-07-2016 10:05 ]

Ask yourself if you are happy and then you cease to be.


Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Lethalis schreef op zaterdag 30 juli 2016 @ 10:03:
[...]

Zijn dit echte argumenten of excuses? :)

Wij hebben op kantoor maar 1 reden gehad om niet te upgraden naar .NET 4.5 (vanaf 4.0) en dat is dat we nog klanten hebben die Windows XP draaien (ja, je leest het goed).

Gelukkig worden deze klanten steeds schaarser en kunnen we binnenkort upgraden (die computers uit het jaar nul gaan toch een keer stuk :+ ).

450kB is niks? Wij versturen updates van 30MB. Zelfs bij een 2mbit lijntje komt dat in 2 minuten binnen.

PS:
Wij hebben overigens zelf een update programma'tje gemaakt. In ons geval doet het meer dan alleen het programma updaten. Er wordt ook een SQL database bijgewerkt naar een nieuw schema, gecontroleerd of er nog andere instanties op andere pc's draaien, etc.
Beide :)
Het probleem is dat ik maar een kleine webhost heb en elke MB weegt door, ook als ik elk programma met een uitgebreide installer moet uploaden dat weegt zeker door.
Vista kwam standaard met v3 en ik weet niet of ik gebruikers heb met Win Xp, heel ik weet niet welke os versies de gebruikers van mijn programma(s) hebben.

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Ik heb deze avond de knoop doorgehakt en naar dot net 4.5 gegaan en squirrel for windows semi geïntegreerd. Nu heb ik een vraag en ik vind niet direct een antwoord op, hoe kun je squirrel laten updaten vanaf een webhost?

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Zie https://github.com/Squirr...ing-started/5-updating.md bij de releasify wordt de update gemaakt. Alle bestanden kun je uploaden naar je webhost (je hebt voor downloaden/updaten alleen de laatste full package nodig, de delta packages en de RELEASES file).

In je programma maak je een UpdateManager aan met verwijzing naar de locatie op je webhost en kun je checkforupdate doen en daarna UpdateApp.

Acties:
  • 0 Henk 'm!

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Ha dus die directory dat er standaard bij integration staat veranderen naar de url. Dat komt wel goed :)

[ Voor 8% gewijzigd door Damic op 05-08-2016 08:13 ]

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Een kleine update:
heb nu al een aantal beta releases gedaan met squirrel en dit zijn mijn bevindingen:
Pro's
+ geen gezeik met popup menu's e.d.
+ simpel om te integreren

Con's:
- hoe moet je een auto start integreren, vermits alles via update.exe start?
- je zit altijd vast aan squirrel
- je moet telkens de nugetpackage aanpassen (ja dit kan automatisch) maar is toch omslachtig en ik weet niet of beta en normaal gescheiden kan blijven.

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag


Acties:
  • 0 Henk 'm!

  • Serpie
  • Registratie: Maart 2005
  • Laatst online: 01-07-2023
Volgens mij zou je een snelkoppeling moeten kunnen toevoegen aan de startupfolder van de gebruiker:
https://github.com/Squirr...rel/IUpdateManager.cs#L18

Ik vind persoonlijk de nuget methode wel fijn werken zo vaak komen er geen nieuwe bestanden bij ons bij.

Voor test/acceptatie/productie hebben we gewoon aparte targetfolders waar we de packages en releases maken. Zo krijgt elke stap zijn eigen upgrade path, de download locatie wordt door ons door de server teruggegeven dus als de gebruiker verbonden is met test krijgt hij de downloadlocatie voor de test release.

  • Damic
  • Registratie: September 2003
  • Laatst online: 21:54

Damic

Tijd voor Jasmijn thee

Topicstarter
Ow ja ik zien het :)

Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag

Pagina: 1