auto update
-
hey guys, heres the deal. i got a few apps, running in production, but im constantly improving them. having to go from computer to computer and run the installer over and over (im using innosetup for the installer) i would like to incorporate some sort of auto update component. what would be the best approach towards this. should i keep the binaries on the svn server and somehow check against that and download the appropriate files and then somehow restart the app. or would it make more sense to somehow make the installer do the updating and just release 1 file? any input on the subject would be appreciated.
-
hey guys, heres the deal. i got a few apps, running in production, but im constantly improving them. having to go from computer to computer and run the installer over and over (im using innosetup for the installer) i would like to incorporate some sort of auto update component. what would be the best approach towards this. should i keep the binaries on the svn server and somehow check against that and download the appropriate files and then somehow restart the app. or would it make more sense to somehow make the installer do the updating and just release 1 file? any input on the subject would be appreciated.
-
hey guys, heres the deal. i got a few apps, running in production, but im constantly improving them. having to go from computer to computer and run the installer over and over (im using innosetup for the installer) i would like to incorporate some sort of auto update component. what would be the best approach towards this. should i keep the binaries on the svn server and somehow check against that and download the appropriate files and then somehow restart the app. or would it make more sense to somehow make the installer do the updating and just release 1 file? any input on the subject would be appreciated.
Yeah, you can do it manually like that; check some web server for updated version and pull those down as needed. An alternative: .NET provides a built-in deployment mechanism called ClickOnce, which allows for automatic updates before starting your app, after running your app, or at any time via a single line of code. Read up on it here[^].
Tech, life, family, faith: Give me a visit. I'm currently blogging about: Upon this disciple I'll build my new religion? The apostle Paul, modernly speaking: Epistles of Paul Judah Himango
-
Yeah, you can do it manually like that; check some web server for updated version and pull those down as needed. An alternative: .NET provides a built-in deployment mechanism called ClickOnce, which allows for automatic updates before starting your app, after running your app, or at any time via a single line of code. Read up on it here[^].
Tech, life, family, faith: Give me a visit. I'm currently blogging about: Upon this disciple I'll build my new religion? The apostle Paul, modernly speaking: Epistles of Paul Judah Himango
unfortunately, clickonce just isn't an option for me. i started to develop my own updater, however, im still puzzled about how it will update all the files (including the executable itself) when its still running, will i need to make this into a seperate application that replaces all the files and then starts up the main executable? also, id rather not have to keep two different sets of files, one on my developing machine and one on the server that the updates will be hosted at. i thought about maybe just downloading a setup file (which i already output for production) but im not sure if the installer (innosetup) will allow to "update/replace" files because as far as i know it just installs the app on a per version basis, so you can have your app version 1.1 and 1.2 installed at the same time. would it be feasible to somehow compress the update and have the program deflate the files?
-
unfortunately, clickonce just isn't an option for me. i started to develop my own updater, however, im still puzzled about how it will update all the files (including the executable itself) when its still running, will i need to make this into a seperate application that replaces all the files and then starts up the main executable? also, id rather not have to keep two different sets of files, one on my developing machine and one on the server that the updates will be hosted at. i thought about maybe just downloading a setup file (which i already output for production) but im not sure if the installer (innosetup) will allow to "update/replace" files because as far as i know it just installs the app on a per version basis, so you can have your app version 1.1 and 1.2 installed at the same time. would it be feasible to somehow compress the update and have the program deflate the files?
I suppose the auto-update bit could be a different application, yeah. I've seen several applications like this. Another possibility may be something like an application structure where your program is just a simple shell that never/rarely gets updated, and the rest of your application (the parts that get updated) are loaded like a plug-in, which can then be loaded/unloaded on demand through things like AppDomains.
Tech, life, family, faith: Give me a visit. I'm currently blogging about: Upon this disciple I'll build my new religion? The apostle Paul, modernly speaking: Epistles of Paul Judah Himango