Distribution of deliverables over the air.
-
I hope this is the right forum to ask my question, so I'm posting here. At the moment for all the software deliverables I used msi packaging (using Flexera InstallShield). So that for each new release I've create a new InstallShield and distribute. Looking for a possibility of distribution over the air. To do that I've do some changes to the software logic in-order to poll a server may be and download the latest binaries. What I've in my mind is similar design of Windows update, where my application will shows when a new version is available. My question is, what's the best way to archive new binaries to download. I mean on a single server for example, and what if server down in case? Feedback and comments really appreciates. Thanks in advance.
If you've never failed... You've never lived...
-
I hope this is the right forum to ask my question, so I'm posting here. At the moment for all the software deliverables I used msi packaging (using Flexera InstallShield). So that for each new release I've create a new InstallShield and distribute. Looking for a possibility of distribution over the air. To do that I've do some changes to the software logic in-order to poll a server may be and download the latest binaries. What I've in my mind is similar design of Windows update, where my application will shows when a new version is available. My question is, what's the best way to archive new binaries to download. I mean on a single server for example, and what if server down in case? Feedback and comments really appreciates. Thanks in advance.
If you've never failed... You've never lived...
IIRC, there is an option within the (paid version of) InstallShield to generate code that will check for an update when you run a program, and notify the user. Have you looked into that?
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack. --Winston Churchill
-
I hope this is the right forum to ask my question, so I'm posting here. At the moment for all the software deliverables I used msi packaging (using Flexera InstallShield). So that for each new release I've create a new InstallShield and distribute. Looking for a possibility of distribution over the air. To do that I've do some changes to the software logic in-order to poll a server may be and download the latest binaries. What I've in my mind is similar design of Windows update, where my application will shows when a new version is available. My question is, what's the best way to archive new binaries to download. I mean on a single server for example, and what if server down in case? Feedback and comments really appreciates. Thanks in advance.
If you've never failed... You've never lived...
I use a separate service to monitor the "health" of the main app (kiosk) and communicate with a server for "checking in", downloading updates (new installs), restarting / communicating (shutdown) with the main app. (Service can email that the server is down; and vise-versa). Adding this logic to the "main app" itself gets a little mind-mending for someone not familiar with the app.
-
We use clickonce behind the firewall and it works reasonably well.
Never underestimate the power of human stupidity RAH
-
Honestly, it depends entirely on the criticality of the updates. How severe of a negative impact will users suffer from not being able to update immediately on update release? Will an update server uptime of less than 100% drive consumers away from your product to alternatives? That said, static space is very cheap, and by setting up a mirror or two that your update service can point at wouldn't hurt, it would just cost a little money. Versioning for a single application can be pretty easy, just make sure that you have a "current" folder that is consistent across mirrors.
-/myAppDataComponent -/current -/1 -/1/1 //version 1.1 -/1/2 //version 1.2 -... -2 ...
|-/myAppBusinessComponent
|-/current
..."There are three kinds of lies: lies, damned lies and statistics." - Benjamin Disraeli
Out of all, I've one application which is a core layer of others. So that's critical. There can be a situation application in use, and and the underlying layer has an update. That's a critical situation in my case. My thought of, I need a separate agent to monitor the states of applications and update.
If you've never failed... You've never lived...
-
That's something new for me. Thanks for the comment, will have a look.
If you've never failed... You've never lived...
-
IIRC, there is an option within the (paid version of) InstallShield to generate code that will check for an update when you run a program, and notify the user. Have you looked into that?
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack. --Winston Churchill
I've licensed version of InstallShield 2011. Hope that feature support in their. I didn't knew that and never tried. Isn't it GUI maker for the installer?
If you've never failed... You've never lived...
-
I use a separate service to monitor the "health" of the main app (kiosk) and communicate with a server for "checking in", downloading updates (new installs), restarting / communicating (shutdown) with the main app. (Service can email that the server is down; and vise-versa). Adding this logic to the "main app" itself gets a little mind-mending for someone not familiar with the app.
That's what I exactly thought of. Develop a separate agent to monitor all the applications as well as the new updates on the server. It'll download/copy new binaries to relevant locations and manage the applications accordingly.
If you've never failed... You've never lived...
-
I've licensed version of InstallShield 2011. Hope that feature support in their. I didn't knew that and never tried. Isn't it GUI maker for the installer?
If you've never failed... You've never lived...
I've never had to use it myself, but I seem to remember seeing something about it in the documentation of the 2013 release.
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack. --Winston Churchill
-
I've never had to use it myself, but I seem to remember seeing something about it in the documentation of the 2013 release.
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack. --Winston Churchill
Seems my version not supporting that. For the moment I'm working on a software solution to evaluate. Third agent running all the time to manage all the updates, interacting with serves.
If you've never failed... You've never lived...