/build/static/layout/Breadcrumb_cap_w.png

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

0 Comments   [ + ] Show comments

Answers (10)

Posted by: dunnpy 14 years ago
Red Belt
0
Try the upgrade table - it's there for just this situation.

Thanks,

Dunnpy
Posted by: ramu_ch 14 years ago
Orange Belt
0
I have some problem in using the upgrade table.
Posted by: ramu_ch 14 years ago
Orange Belt
0
while upgrading from old version to existing version, the old version is prompting for user interaction. we dont want any user interaction.

That is the reason i couldn't able to use upgrade table.
Posted by: pjgeutjens 14 years ago
Red Belt
0
while upgrading from old version to existing version, the old version is prompting for user interaction. we dont want any user interaction.

That is the reason i couldn't able to use upgrade table.


what's the difference then with doing an uninstall manually? are you using command line parameters?
Posted by: ramu_ch 14 years ago
Orange Belt
0
I am suppresing the prompt while uninstall. I am adding one additional property to the custom action for uninstall.

Here is the command line i have used in wise script.
msiexec /X {ProductCode} TSC_DATA_STORE=0 /qb
Posted by: er.hsingh 14 years ago
Orange Senior Belt
0
if u will put Upgrade code of old package into the new one, it will automatically remove the previous and install the new one.
Posted by: pjgeutjens 14 years ago
Red Belt
0
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
Senior Yellow Belt
0
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
Posted by: anonymous_9363 14 years ago
Red Belt
0
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
10th Degree Black Belt
0
Hi Ramu,
which part of this command line is needed to suppress the prompt?
TSC_DATA_STORE=0 OR /qb ?
Regards, Nick
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