Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
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.
Zie ook https://channel9.msdn.com...apps-the-way-it-should-be
[ Voor 35% gewijzigd door Serpie op 26-07-2016 08:20 ]
Owja Momenteel nog windows maar in de toekomst misschien andere OS'sen en VB.NETZeg 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.
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

Eens bekijken
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
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.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
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
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
Bij Mac OSX zie je voor apps die niet via brew/app store lopen toch wel regelmatig dat ze Sparkle gebruiken als self-updaterjohnkeates 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.
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
* 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
Zijn dit echte argumenten of excuses?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)
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.
BeideLethalis 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.
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
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag
In je programma maak je een UpdateManager aan met verwijzing naar de locatie op je webhost en kun je checkforupdate doen en daarna UpdateApp.
[ 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
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
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.
Al wat ik aanraak werk niet meer zoals het hoort. Damic houd niet van zijn verjaardag