I've been trying to develop some upgrade strategy for my program.
What I want to achieve is an installer which would be able to install lets
say version 1.0.3, but also upgrade the versions 1.0.0 or 1.0.1 to version
1.0.3. 
To make the things simple lets say that installing is just copying some
files and upgrading is changing the old versions of files to the new ones. 
I also wouldn't like to have multiple positions in add/remove windows dialog
(just one after every update/install/upgrade).

I've read the tutorial
http://www.tramontana.co.hu/wix/lesson4.php
It gives good information about when you have to use major upgrade, but it
doesn't realy says what is the difference between the way the updates work.

It seemed that small update or minor upgrade is well enough for me. 
I kept on playing with them (and with the major upgrade also when I didn't
succeed)
In the small and minor (to avoid error of already installed app) I am
starting the msi like this: 
msiexec /i ExampleInstaller.msi REINSTALALL=ALL REINSTALLMODE=vomus /L*v
c:\msilog.txt

Just to make things clear:

small updates: product guid not changed, package guid not changed, version
changed
minor upgrade: product guid not changed, package guid changed, version
changed
major upgrade: product guid changed, package guid changed, version changed

In all of this I was trying to update the application without uninstalling. 
First I tried without Upgrade section at all, then I added also following:

<Upgrade Id="{0253FF1A-030B-4646-9540-7BBF890BA52C}">
        <UpgradeVersion OnlyDetect="yes" Property='PATCHFOUND' 
IncludeMinimum='yes'
Minimum='1.0.0' />      
</Upgrade>

The installation goes on fine and is finished, but whatever the update
strategy is, the files don't get updated. 
They are all the same after the installation as before.

It changes when I use the OnlyDetect attribute set to no:
<Upgrade Id="{0253FF1A-030B-4646-9540-7BBF890BA52C}">
      <UpgradeVersion OnlyDetect="no" Property='PATCHFOUND'
IncludeMinimum='yes' Minimum='1.0.0' />      
</Upgrade>

Then the previous installation gets uninstalled and the files are fresh. 
But as I understood it is not needed to uninstall old version to change some
files.
How does it work finally? I couldn't find any specific information about
this in wix docu or on google.

Sorry for the long introduction...
These are my questions (I'll be grateful for the answer or pointing to some
documentation)

How does the installation strategy (small, minor, major) affect replacing
changed files?
When does the new position in the add/remove windows dialog is created and
when it is not?


I use the newest version of wix 3 and votive. 
I generated initially the fragment with components using heat, and it stays
the same in every next version of installer
(the guids are not being changed). This is a sample of component that does
not get overriden:

<Component Id="MyApp.exe" Guid="{F51AFCCC-97E0-4610-AB91-77A35C1DFF70}">
          <File Id="MyApp.exe" Name="MyApp.exe" KeyPath="yes"
Source="$(var.MyProject.TargetDir)MyApp.exe" />
</Component>

cheers
Przemek
-- 
View this message in context: 
http://n2.nabble.com/How-Update---Upgrade-strategy-%28small%2C-minor%2C-major%29-affect-file-overriding--tp1304357p1304357.html
Sent from the wix-users mailing list archive at Nabble.com.


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to