uninstall msi from sys context which was previous installed per-user

I have an already deployed application (msi package) which was installed with no ALLUSERS property, this means that was a per-user installation, and now I have a newer version of this application and I should first remove the older version (if is installed) from a system context. This removal must be done outside of the newer version msi( so i cant use the upgradetable etc)
Is there anyway I can do this, i am thinking that are some registries that has to be added on sys context also, which are present only on the user account.

Any Ideas. Thanks!

0 Comments   [ + ] Show comments

Answers (6)

Posted by: SorenHJ 9 years ago
White Belt

I had the same problem with some users that had had our supporters install software for them in user context. Using SCCM I can now uninstall it using this:

In the wanted context just reinstall the product and you can remove it afterwards:

msiexec /i "Programme.msi" REINSTALLMODE=sumo /qn

msiexec /i "Programme.msi" REMOVE=ALL /qn

Posted by: timmsie 12 years ago
Fourth Degree Brown Belt
You just need to create a pre-requisite script that checks for the existence of the msi and then runs:

msiexec /x {PRODUCTCODE} /qb

you can use the installer object functions for this http://msdn.microsoft.com/en-us/library/aa369463%28v=VS.85%29.aspx
Posted by: dryce 12 years ago
Senior Yellow Belt
thx for your replay, but I already tried that and I get an: This Action Is Only Valid for Products That Are Currently error, also the package is not available in Add/Remove. it can only be seen on the user on which has been installed.
Posted by: AB 12 years ago
Purple Belt
Kid the machine in to thinking the product is installed per-machine
Steal the Installer Product reg from HKCU from a per-user test install and transpose it in to HKCR\Installer\Products\...
And enjoy the weekend...

I've also seen per-machine installs performed 'over the top of' a per-user install - the Product can then be uninstalled... bit of a ball ache...
Posted by: anonymous_9363 12 years ago
Red Belt
It's not as simple as that. You need to remove a whole bunch of other stuff, too, like

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\AppMgmt\[GUID]
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\[UserSID]\GroupMembership
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\[UserSID]\History\[DomainGUID]
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\[UserSID]\History\[GUID]

Several of the keys in these hives will feature the ProductCode's GUID in what Microsoft calls "packed" format (which saves 6 bytes...wow!). There's a script knocking around on AppDeploy which translates these back and forth, to make it easier to determine which product is involved. I think that's everything but just in case, once you have the packed GUID, search the registry for it and the regular GUID.

Failure to remove the GP junk will bite you at some future point. BTDT, at a client which insisted on per-user installs. The Software Compliance team identified, for example, over 200 instances of an application for which the client had only 30 licenses. They wanted a tool to remove these spuriously installed instances of apps, where users had logged in to machines other than their normal one. An early version of the tool which failed to address the GP registry stuff caused no end of weird behaviour with apps which only a rebuild fixed.
Posted by: dryce 12 years ago
Senior Yellow Belt
ty all, for your resposes, that trick AB told about, did worked until a point, meaning that system tries to uninstall the package (which is a step forward :) ), but afterwards it gets into another weird errors, related to the package ( its a VMware workstation 4.5 btw) which has many stuff going on under the 'hood', and i have to dig more about those. Also I'll take into consideration what u told me - VBSCAB.

So, ty all and have a nice weekend too :)
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Don't be a Stranger!

Sign up today to participate, stay informed, earn points and establish a reputation for yourself!

Sign up! or login


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