Upgrade Application and Uninstall
Hi Guys. Hope you can help me with a little issue i have. First off i dont claim to be a packaging god but know enough to get by.
I have an application that is installed on users machines and i have the same application but with updated files and registry keys etc etc. I would like to uninstall the previous version if found and then install the latest version.
Now i have been looking at the Upgrade table. I have put in the upgrade code of the previous version, the VersionMin, Attributes 258 and ActionProperty NEWERPRODUCTFOUND
However when the application is installed it just installed the new one. If i look in Add \ Remove programs in windows i can see both my applications installed.
Can anyone advise on how i can achive what it is i am trying to do
Thanks in advance for any help
I have an application that is installed on users machines and i have the same application but with updated files and registry keys etc etc. I would like to uninstall the previous version if found and then install the latest version.
Now i have been looking at the Upgrade table. I have put in the upgrade code of the previous version, the VersionMin, Attributes 258 and ActionProperty NEWERPRODUCTFOUND
However when the application is installed it just installed the new one. If i look in Add \ Remove programs in windows i can see both my applications installed.
Can anyone advise on how i can achive what it is i am trying to do
Thanks in advance for any help
0 Comments
[ + ] Show comments
Answers (3)
Please log in to answer
Posted by:
anonymous_9363
14 years ago
If the previous version was installed per-user, then only the installing user can uninstall it, without some major registry acrobatics. The same applies if it was deployed via Group Policy. If either (or both!) of those is true, the simplest route is to build the uninstall into your new package by using the RemoveFile and RemoveRegistry tables. You'll need to locate the 'managed' registry entries and make sure your package removes them, as well as the ARP stuff.
Posted by:
pjgeutjens
14 years ago
CJ,
1) you should also remember to add your NEWERPRODUCTFOUND property to the SecureCustomProperties in your MSI's Property table
2) 258 being 256 + 2 and considering the following quote from MSDN about the attributes:
This might be part of your problem too [;)]
PJ
1) you should also remember to add your NEWERPRODUCTFOUND property to the SecureCustomProperties in your MSI's Property table
2) 258 being 256 + 2 and considering the following quote from MSDN about the attributes:
2 0x002 Detects products and applications but does not remove.
256 0x100 Detects the range of versions including the value in VersionMin.
This might be part of your problem too [;)]
PJ
Posted by:
Harsha Gurugunti
14 years ago
Hi,
While upgrading the application, you have to consider below points
1.Upgradecode has to same as previous version (Synchronize)
2.Product version has to be greater than previous version (According to the versioning rules)
3.Enter the same Upgrade code in Property table
4.In VesionMax column enter the Product version
5.Attributes (msidbUpgradeAttributesMigrateFeatures ) 1 (0x001) -- Migrates feature states by enabling the logic in the MigrateFeatureStates action.
If above said attribute didn’t work
Attributes set to 513… I don’t remember exactly please try…
As per Windows installer ActionProperty :
“When the FindRelatedProducts action detects a related product installed on the system, it appends the product code to the property specified in this field. The property specified in this column must be a public property and the package author must add the property to the SecureCustomProperties property. Each row in the Upgrade table must have a unique ActionProperty value. After FindRelatedProducts, the value of this property is a list product codes, separated by semicolons (;), detected on the systemâ€Â
Hope this may help you,
Cheers,
While upgrading the application, you have to consider below points
1.Upgradecode has to same as previous version (Synchronize)
2.Product version has to be greater than previous version (According to the versioning rules)
3.Enter the same Upgrade code in Property table
4.In VesionMax column enter the Product version
5.Attributes (msidbUpgradeAttributesMigrateFeatures ) 1 (0x001) -- Migrates feature states by enabling the logic in the MigrateFeatureStates action.
If above said attribute didn’t work
Attributes set to 513… I don’t remember exactly please try…
As per Windows installer ActionProperty :
“When the FindRelatedProducts action detects a related product installed on the system, it appends the product code to the property specified in this field. The property specified in this column must be a public property and the package author must add the property to the SecureCustomProperties property. Each row in the Upgrade table must have a unique ActionProperty value. After FindRelatedProducts, the value of this property is a list product codes, separated by semicolons (;), detected on the systemâ€Â
Hope this may help you,
Cheers,
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.