Can a .NET application update itself in the background, like Google Chrome?

Google Chrome updates itself in the background. No action is required from the user. I think this is a very good and convenient way to update the application. Does anyone know how to do this technically, and if you can do the same for a .NET application (WPF)?

+4
source share
2 answers

ClickOnce is a terrible solution because it does not work in the background, it only checks startup and can significantly slow down startup time.

Chrome, on the other hand, periodically checks to see if the application is running, silently downloads the update, and then installs it when you say “OK, why not.”

From the user's point of view, there is very little delay, and the material simply continues to interrupt.

Shadow copying will be your best bet. You will want to write a temporary event that periodically checks the web server for updated components and downloads them as needed. A shadow copy is a way to replace them.

Developing your modular modularity will also help - instead of downloading every single file involved in running your application, you can design it so that the kernels can be updated independently, each time reducing the payload for the end user, they download your updates.

For a more extreme solution, various vendors provide update services such as InstallShield.

0
source

Yes. You can use ClickOnce or use ShadowCopying.

Here is an example of ShadowCopying with a good description, which shows an example of a web server, but the same method can be applied to the desktop expression. Another good example is here .

+1
source

Source: https://habr.com/ru/post/1335210/


All Articles