using wyUpdate with MSI

I am just starting to evaluate wyUpdate. We currently use visual studio setup projects to create our msi. When we issue an update it simply uninstalls the old version and installs a new version. I don't really want to mess with this process (even though it may not be the best). What I want is to include my msi and other accompanying files into each update.

I have created a wyupdate process which has my msi and files in the temporary directory and it runs the msi which will uninstall version 2.0.0 and install version 2.0.1 and then remove the temporary files. This seems like it will work.

The problem I have is that when I create an update it doesn't matter what version the user has installed. Say if I create version 2.0.2. A user with 2.0.0 can update just like a persion with 2.0.1. You would think that I could just upload the ptpublisher.all.2.0.2.wyu and both those users would update. This doesn't seem to work. It seems to want to download the ptpublisher.2.0.1.to.2.0.2.wyu. Then I need to keep multiple versions of my updates around. Is there any way to force ptpublisher.all.2.0.2.wyu to always be used when updating to 2.0.0.

Thanks

You want to deliver one update that updates all versions to the latest? Have I got that correct?

If that's what you mean, then you can do it rather simply. Just create a single version in wyBuild. Add your MSI to the temp files section, and set it to execute either before or after the update (it doesn't matter in your case):

[attachment=1]version.png[/attachment]

With this single version you'll be able to update all existing versions.

Then when you have a new version to release, simply change the version number in the text box to the latest version:

[attachment=0]new-version.png[/attachment]

Tell me if this helps.

Yes this helps.

Thanks

Hi,

I'm trying this technique to execute a new Innosetup installation to replace all previous versions.I'm hitting two problems:- Innosetup is unable to install wyupdate.exe because it's still running. I've ticked "Execute file After update has finished". Am I missing a way to resolve this other than possibly building an Innosetup without this file included?- Innosetup by default launches my application upon installation and Wyupdate also restarts the application, ending up with two copies of my app running. Is there a way to resolve this other than a custom Innosetup?Thanks for you help.

We recommend you don't use this method for updating your app. Mainly because you lose a lot of the benefits of using wyBuild (patching, small update size, etc.).

That being said, this method is a brute force way to upgrade your app. You have to realize that wyUpdate.exe updates itself. So you can either pass a custom commandline option to your installer (e.g. /skipwyupdate), or you can uncheck "Wait for execution to finish before continuing" in wyBuild.

Tell me if this helps.