Hi Rob,

On Thu, Mar 26, 2015 at 12:27 AM, Rob Mensching <r...@firegiant.com> wrote:

> Schedule your upgrade late and carefully adhere to the Component Rules.
>

Thanks for the hint. I googled a bit and read up things on MajorUpgrade
scheduling [0] and Component Rules, including [1] and [2].

So I've tried scheduling the upgrade later. Specifically I've
added Schedule="afterInstallExecute" to the MajorUpgrade, see [4].

Now it seems to first overwrite the existing installation and then runs the
uninstall process. The shortcut and pinned task bar icons are retained.
However the uninstall progress removes the overwritten files so that the
shortcut points to a broken installation.

Why does it remove the now newer version installation files during
uninstall?
I expected MSI to know that the files in the program folder are of a newer
installation when it starts the uninstall process and only deletes files
which haven't been replaced during installation.

Thanks in advance for any pointers and hints.

Cheers,
Tobias

[0]
http://wixtoolset.org/documentation/manual/v3/howtos/updates/major_upgrade.html
[1]
http://robmensching.com/blog/posts/2003/10/4/windows-installer-components-introduction/
[2] http://robmensching.com/blog/posts/2003/10/18/component-rules-101/
[3]
https://dl.dropboxusercontent.com/u/14672346/tmp/swift/swift_wix_install_msi_log.txt
[4]
https://github.com/swift/swift/blob/master/Swift/Packaging/WiX/Swift.wxs#L13
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to