cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
sumit_singh1984
Level 3

Minor Upgrade

Hi,
Could anyone let me know how to go about creating the minor upgrade ?
What i have done:
1.>Changed the package code
2.>Changed the Product version
3.>Added 1 new feature under the parent feature.
4.>Under new subfeature i have added few components.
5.>Some components have been deleted from the parent feature
6.> Upgrade code is same
when i install the minor upgrade msi on top on existing msi,it says the product already exist,please uninstall.

Any help is appreciated.

regards,
Sumit
Labels (1)
0 Kudos
(3) Replies
thepeter
Level 7

0 Kudos
sumit_singh1984
Level 3

Hi
Thanks for reply.I have seen that documnets.It does not give the steps for creating the upgrade.
Could you please let me know the steps for creating the minor upgrade?
Do we need previous version of the application for which we are creating the upgrade.


Regards,
Sumit
0 Kudos
Christopher_Pai
Level 16

1.>Changed the package code

Good. But this should happen every build anyways. ( There is a setting for that.)

2.>Changed the Product version

Good practice. Not doing this is called a Small Update but is really the same thing as a minor upgrade. I think small updates are evil though cause the version number isn't unique.

3.>Added 1 new feature under the parent feature.

Beware here. There are blog articles that talk about this. Basically this causes the parent feature to be reinstalled also and can get into an ugly resolvesource issue.

4.>Under new subfeature i have added few components.

Acceptable.

5.>Some components have been deleted from the parent feature

Nope. MSI can't do this during a minor upgrade. You'll never be able to uninstall those components. What you need to do is "puncture" the component by setting it to transitive and give it a condition that will next evaluate to true such as GOTOHELL="666" ( Quote from Vagmi's blog ). Also in the build make a zero byte file available for consumption to decrease package size.

6.> Upgrade code is same

Good.

when i install the minor upgrade msi on top on existing msi,it says the product already exist,please uninstall.

That's because you need to use Upgrade.exe ( InstallShield IDE tells you this and makes a setting available. ) or manually type the commandline

msiexec /i foo.msi REINSTALL=ALL REINSTALLMODE=VOMUS

Also beware that there are many limitations to what a Minor Upgrade can do. Test thoroughly.
0 Kudos