Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Uninstall of "corrupt" MSI fails...


7 replies to this topic

Jogge

Jogge
  • Members
  • 3 posts

Posted 22 December 2005 - 14:46

Hi!
I have an MSI deployed with Group policy Per User. The MSI have "connections" to network disks (mapped driveletters). When we now have removed the users from the policygroup it should do an uninstall.
The problem is that the MSI-uninstall failes and the GPO tries to do this everytime the user logs on. The uninstall failes because it doesnt have mapped the drives when the uninstall runs.

I've tried to solve the problem by using MSIzap. My idea was to package MSIzap in a MSI and use the packagecode to zap all traces of the "corrupt" MSI.

The problem is that MSIzap only works fully if you run it when the user (who have the problem)is logged on. It doesn't remove all traces when you run with an another logged in user or if I make a package with MSIzap and distribute it to the machines.

Does anyone have another idea to solve this or know some other program that removes all traces of the MSI?

Best regard
Jörgen

Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 23 December 2005 - 02:33

Could you put the uninstall in the logon script?
Regards
-Stein Åsmul

Jogge

Jogge
  • Members
  • 3 posts

Posted 23 December 2005 - 13:54

That's a thought but, no, because I can't point out exactly which users who have this problem...
They have been in an policygroup and now our local IT-staff have taken them out and thats when it wants to uninstall the msi and then we have the problem described.
In my organisation we have 12 000 users...
Thanx for the idea though.


Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 23 December 2005 - 16:03

If it is acceptable to deploy a cleanup package to all computers you could use Microsoft's ActiveSetup feature to run a batch file once per user:

Ed Tippelt's summary for Active Setup and how to implement it:

Active setup is a process that runs automatically when a user logs in. Registry keys at "HKLM\Software\Microsoft\Active Setup\Installed Components\%APPNAME%" and "HKCU\Software\Microsoft\Active Setup\Installed Components\%APPNAME%" are compared, and if the HKCU registry entries don't exist, or the version number of HKCU is less than HKLM, then the specified application is executed for the current user.

If your application requires installation of components such as files or registry keys on a per-user basis, but your application has no advertised entry points or other triggers to initiate the installation process, then Active Setup is the solution.

Look under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components to see samples of commands. Basically what you would need would be to run a batch file that would call msizap and do the cleanup.
Regards
-Stein Åsmul

Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 23 December 2005 - 16:06

Something along these lines:
"HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\TheProductName\StubPath" = "cmd.exe /c cleanup.cmd"

Regards
-Stein Åsmul

Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 23 December 2005 - 16:12

[removed duplicate post]

Edited by Glytzhkof, 23 December 2005 - 16:15.

Regards
-Stein Åsmul

Jogge

Jogge
  • Members
  • 3 posts

Posted 02 January 2006 - 10:04

Thanx Glytzhkof!
I'll check Active Setup and try to build somethin around that
Jörgen

VBScab

VBScab
  • Full Members
  • 436 posts

Posted 11 January 2006 - 16:37

I have a VB Script which zaps files and reg entries based on a passed-in Product Code, if anyone's interested.

It is very much based on my requirements at the time it was written (e.g. it has calls to a proprietary object to replace file permissioning, amongst other things) but it can easily be edited to suit.
- Don't know why 'x' happened? Want to know why 'y' happened? ProcMon will tell you.
- Try using http://www.google.com before posting.
- I answer questions only via forums. Please appreciate the time I give here and don't send me personal emails.