/build/static/layout/Breadcrumb_cap_w.png

If condition, older version installing on top of new

Any ideas on how to have a MSI check if a newer version is installed? My guess is you'd have to setup a custom action or property?

Thanks for any help you can provide.

0 Comments   [ + ] Show comments

Answers (4)

Posted by: AngelD 16 years ago
Posted by: Zerg 16 years ago
Senior Yellow Belt
0
Awesome, thanks. I just found this too

http://msdn2.microsoft.com/en-us/library/aa370840(VS.85).aspx

It exists on the internet.. it's just a matter of correctly asking the question :)
Posted by: AngelD 16 years ago
Red Belt
0
You could use the Upgrade table and and make sure to use the msidbUpgradeAttributesOnlyDetect attribute bit.
Then use the <ActionProperty> property as a condition to stop the old version from being installed over a newer version.
Posted by: Zerg 16 years ago
Senior Yellow Belt
0
Thanks for the reply. I can't get it to work and for the sake of discussion, let's assume we have App1.0 and App2.0. 2.0 will always remove 1.0. What I want is, when you install App1.0, it will not install if 2.0 is currently installed or basically only install itself or remove any previous versions. Doing what you said should accomplish this. How exactly would I take those steps? This is what I tried and it's not working:

- Kept upgrade codes between 1.0 and 2.0 the same, different product codes.
- Added a property called NEWERVERSIONFOUND to the 'SecureCustomProperties' property.
- Added 1.0 upgrade code to its own upgrade table. I set version min and max to 1.0. I then changed the 'Attributes' to 2. This sets the bit flag for msidbUpgradeAttributesOnlyDetect.
- Set the 'ActionProperty' to NEWERVERSIONFOUND.
- Created a condition in Execute Immediate with. If NEWVERSIONFOUND then Terminate Installation END

Installed 1.0, then 2.0. 2 removed 1. Installed 1 and it did not terminate installation.

Help!
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
 
This website uses cookies. By continuing to use this site and/or clicking the "Accept" button you are providing consent Quest Software and its affiliates do NOT sell the Personal Data you provide to us either when you register on our websites or when you do business with us. For more information about our Privacy Policy and our data protection efforts, please visit GDPR-HQ