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.

GPO Uninstallation

1 reply to this topic


  • Full Members
  • 15 posts

Posted 26 April 2007 - 18:49


I have an msi installer which my customers want to be able to push through a Computer Configuration based GPO. I have noticed that the computer configuration based GPO results in a ProductState of 5 when a user tries to launch the installed application after the machine is restarted. So, I approproately edited the msi to check for ProductState=5 for my custome actions. With this change, my installer seems to work fine during a machine restart and the application gets installed using the GPO. But there are couple of issues:

- One of the features doesn't get installed when a user logs in and tries to access the application by double clicking on the application icon in the desktop (the installer actually finishes the installation and creates the HKCU keys when the user double clicks on the icon). When I check the log, I have "Installed: Local; Request: Local; Action: Local" for the feature that does NOT get installed and "Installed: Local; Request: Reinstall; Action: Reinstall" for the Defaultfeature that gets installed. The REINSTALL property has a value of "DefaultFeaure". I am not sure why one of the features gets re-installed and the other doesn't.

- there is also some problem during uninstall (when the installer is removed from the GPO). Part of my keys and files are not getting removed. Specifically, all my HKCU based keys are not getting removed. I can't use Add/Remove Programs to complete the uninstallation, since it doesn't show the Remove button anymore after the partial uninstallation.

What property should I be looking for during a GPO uninstall and what condition should I use to properly remove all the registry keys and files? REMOVE="ALL" doesn't seem to work. Since logs are not getting created during a GPO based installation/uninstallation, I am unable to find out what is going on. Can someone please help?


Edited by rameshk01, 26 April 2007 - 21:23.


  • Full Members
  • 522 posts

Posted 27 April 2007 - 22:09

I'm assuming that the GPO is assigning software, not publishing (when publishing is used, the user must select "Install from the network", with assigning the software appears to be installed but is installed on demand).

Issue 1. When the user attempts to access something from your software, not all features are installed: only the feature containing the requested software is installed. If that feature has a parent feature, its parent is installed too, and also its parents' parent, etc. But child features and unrelated features are not installed.
To resolve the issue, review your feature tree. You can also add code to your software that installs these features on demand (your software can also access the API and request just-in-time installation, repair etc.)

2. When a machine GPO is executed, usually nobody is logged in. So during installation no user profile was present, and therefore HKCU did not exist.
I don't recommend installing information in HKCU - if a computer has Terminal Services installed, the software can be used by multiple end-users, but during install/uninstall only the profile of the administrator is modified. With a GPO a special case is added, where even the account of the administrator is not left alone.