3

We have an in house winform application that is used by about 20 users in my company. It's a real pain having to send the users a new msi when the application has changed in scope and I would like to have the users prompted from the application as to whether they would like to update their copy. My thoughts are that the source of the application would be on our company server and that the application would look to a database to see if updates area available. Aside from that I don't know where to go from there. Has any one done anything similar to this or does any one have any recommendations on how I should implement this.

Brad
  • 20,302
  • 36
  • 84
  • 102

4 Answers4

5

Here's an open-source solution I wrote to address specific needs we had for WinForms and WPF apps. The general idea is to have the greatest flexibility, at the lowest overhead possible.

So, integration is super-easy, and the library does pretty much everything for you, including synchronizing operations. It is also highly flexible, and lets you determine what tasks to execute and on what conditions - you make the rules (or use some that are there already). Last by not least is the support for any updates source (web, BitTorrent, etc) and any feed format - whatever is not implemented you can just write for yourself.

Cold updates (requiring an application restart) is also supported, and done automatically unless "hot-swap" is specified for the task.

This boild down to one DLL, less than 70kb in size.

More details at http://www.code972.com/blog/2010/08/nappupdate-application-auto-update-framework-for-dotnet/

Code is at http://github.com/synhershko/NAppUpdate (Licensed under the Apache 2.0 license)

synhershko
  • 4,472
  • 1
  • 30
  • 37
2
  1. ClickOnce.

  2. If it's a fairly simple program (not many dependencies) consider keeping the program on a network share have have users run from there.

Jay Riggs
  • 53,046
  • 9
  • 139
  • 151
1

The most popular solutions with graphical update prompts are AutoUpdater.NET and WinSparkle. For a more powerful solution, take a look at Google Omaha.

Michael Herrmann
  • 4,832
  • 3
  • 38
  • 53
0

Squirrel is definitely worth a look

EricSchaefer
  • 25,272
  • 21
  • 67
  • 103
  • Unfortunately, it's deprecated - https://github.com/Squirrel/Squirrel.Windows/issues/1470 and doesn't play nice with .NET 5. – Lev May 18 '21 at 13:45