Placement of Custom Action to Uninstall Old Version in MSI
Hi,
My requirement is to uninstall a old version/s using the MSI GUID/s before installing the new applicaiton.
I have a custom action which will take care of uninstallation using the MSI GUID manually.
I am facing a problem where to place this custom action in MSI. I would like to run this custom action before the actual MSI installtion.
Thanks,
Ramu
My requirement is to uninstall a old version/s using the MSI GUID/s before installing the new applicaiton.
I have a custom action which will take care of uninstallation using the MSI GUID manually.
I am facing a problem where to place this custom action in MSI. I would like to run this custom action before the actual MSI installtion.
Thanks,
Ramu
0 Comments
[ + ] Show comments
Answers (10)
Please log in to answer
Posted by:
dunnpy
14 years ago
Posted by:
ramu_ch
14 years ago
Posted by:
pjgeutjens
14 years ago
Posted by:
ramu_ch
14 years ago
Posted by:
er.hsingh
14 years ago
Posted by:
pjgeutjens
14 years ago
Here is the command line i have used in wise script.
msiexec /X {ProductCode} TSC_DATA_STORE=0 /qb
if you want to make sure the parameter gets passed to the previous version, you could try changing the UninstallString for the application in the registry at HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall.
I'm not 100% sure if this will work though, since it might be this only gets used when you manually uninstall an application in the Add/Remove Programs window.
Another option is to look for the cached copy of the MSI in the Windows\Installer folder, and replacing it with a version of the MSI where the property is set to 0.
I suggest you try option 1 first since it's alot simpler. If that doesn't work we'll look into option 2 [:)]
PJ
Posted by:
john.pirvu
14 years ago
Hi,
Since two MSI-based install processes cannot run at the same time, you can run your custom action only in InstallUISequence. It doesn't really matter after what standard action. I usually place them right before ExecuteAction so it looks like it's part of the install process.
Using "Upgrade" table is a solution, but you cannot set TSC_DATA_STORE this way.
Regards,
John
Since two MSI-based install processes cannot run at the same time, you can run your custom action only in InstallUISequence. It doesn't really matter after what standard action. I usually place them right before ExecuteAction so it looks like it's part of the install process.
Using "Upgrade" table is a solution, but you cannot set TSC_DATA_STORE this way.
Regards,
John
Posted by:
anonymous_9363
14 years ago
you can run your custom action only in InstallUISequence.You should never run CAs of this nature in the UI sequence, since if the installer chooses to run it silently (or it gets deployed by something like SMS/SCCM) the CA will never execute, something which you yourself allude to here!
Posted by:
nheim
14 years ago
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.