Software online update

Anthony Matovu
Anthony Matovu used Ask the Experts™
How do i allow my desktop software developed in automatically detect  updates online and also to do updates onlines
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®
Martyn SpencerSoftware Developer / Linux System Administrator / Managing Director
Though I am sure you could manage it yourself, you could well look for an installer that offers this facility. This would save you time reinventing the wheel. I use Advanced Installer for my installs - though I am not a developer. Check out to see if their tools could work for you. I believe they have a free version.
AndyAinscowFreelance programmer / Consultant
automatically - you can't.  You would have to code something yourself.
Anthony MatovuBusiness Analyst, MTN Uganda


Would it be okay, if i post the updates on the website,  the desktop application will download the updated to the hard disk and then execute them to do the update. the updates can the be deleted.
Ensure you’re charging the right price for your IT

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden using our free interactive tool and use it to determine the right price for your IT services. Start calculating Now!

Most Valuable Expert 2012
Top Expert 2014
I agree with Martyn in regard to Advanced Installer. It works very well, and has an automatic update feature.

You could have your desktop software check a website and compare versions, and then take action based on that. You could download the software and use the Process method to launch it, I'd think. The Advanced Installer update uses a web-based text file to read, and then compares it to local values stored in the registry. You could do something similar, I suppose.

What are you using for installation technology now? With most .NET apps, you use some form of installer, whether is something like AI or Click To Run, etc.
ste5anSenior Developer
As the others already wrote: Use a professional setup/installation tool.

Cause it is not only "This would save you time reinventing the wheel.", but it is much more about getting the security right. Avoiding that an attacker spoofs an update and gets his software on the client via your application is much harder then many developers expect.
Martyn SpencerSoftware Developer / Linux System Administrator / Managing Director

If you post updates on a web site, you still need code to handle the checking, downloading and installing of updates. You would want to put a system in place that signs your updates and you would need to ensure that your updater also verified these updates. You also need to consider that your users may have an IT team that controls installs and blocks applications self-updating. AV software may also see your update as a potential change and block it. Your code may have dependencies and a good installer would handle identifying and updating these as well.

For these reasons and more, a well-known commercial installer is recommended. They offer facilities that would take you a good deal of time to implement by yourself.

I'm not saying that you can't do it; just that it is not necessarily the best use of your time.
Chinmay PatelChief Technology Ninja
Distinguished Expert 2018
Hi Anthony,

I am not aware of the complete requirements that you have but your requirement look like a VERY STRONG candidate for ClickOnce Installation.

From Microsoft Documentation:

ClickOnce is a deployment technology that enables you to create self-updating Windows-based applications that can be installed and run with minimal user interaction. Visual Studio provides full support for publishing and updating applications deployed with ClickOnce technology if you have developed your projects with Visual Basic and Visual C#.

And more importantly from:

ClickOnce can provide automatic application updates. A ClickOnce application periodically reads its deployment manifest file to see whether updates to the application are available. If available, the new version of the application is downloaded and run. For efficiency, only those files that have changed are downloaded.

When designing a ClickOnce application, you have to determine which strategy the application will use to check for available updates. There are three basic strategies that you can use: checking for updates on application startup, checking for updates after application startup (running in a background thread), or providing a user interface for updates.

In addition, you can determine how often the application will check for updates, and you can make updates required.

There are many benefits of ClickOnce not just the automated deployment in terms of application security and maintenance. While, it does add complexity it costs you nothing just properly planned development - keeping ClickOnce security requirements in mind.

Please have a look at ClickOnce before you go for any other commercial solution that will cost you a fortune. If you have any doubts/concerns about ClickOnce, please feel free to ask me.

Go with ClickOnce.It does all for you.
Anthony MatovuBusiness Analyst, MTN Uganda


i used click once

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial