views:

81

answers:

1

Hi,

[EDIT]

The solution seems to be assigning PersistUpdateCheckInfo to false:

UpdateCheckInfo updateInfo = null;

...

updateInfo = deployment.CheckForDetailedUpdate(false);

[/EDIT]

I've got a (more or less) perfect manual system for updates using the ClickOnce API. I say perfect because the user is presented with a form explaining what the update is all about and why they should install it. I HATE the automatic ClickOnce system. The user has no idea what's going to change in the program!

Anyway, despite having:

1) Publish | Updates: "The application should check for updates" OFF (though I do have an Update Location which I believe is required for manual updates).

2) In the Publish Wizard "The application will not check for updates" ON

It still updates automatically. I've also tried setting Automatic Updates to on, but "Every 50 weeks" but it still does it every time it seems.

If you can help out on this one, it's be mighty appreciated. Thx!

A: 

In case you are still tired of ClickOnce, 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)

I plan on extending it more when I'll get some more time, but honestly you should be able to quickly enhance it yourself for whatever it currently doesn't support.

synhershko