This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Problems with nested installation and Vista/W2K8 (UAC)
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 10, 2009
11:48 AM
Problems with nested installation and Vista/W2K8 (UAC)
We are using a nested installation custom action to install/uninstall another MSI during our setup. Installation works fine on Windows Server 2008, but there's a problem while uninstalling: the corresponding nested uninstallation custom action is called, but it doesn't do anything.
This problem doesn't occur, if we are logged on as the builtin\administrator; but if we are logged on as another member of the administrators group, we have those problems.
Looking at the corresponding (uninstallation) log files shows the following different feature/component states in the nested InstallValidate section:
************** Logged on as buildin\administrator:
...
MSI (s) (10:6C) [16:44:06:214]: Feature: Engine; Installed: Local; Request: Absent; Action: Absent
MSI (s) (10:6C) [16:44:06:214]: Component: German; Installed: Local; Request: Absent; Action: Absent
...
************** Logged on as another member of the administrator group:
...
MSI (s) (10:1C) [16:33:20:708]: Feature: Engine; Installed: Advertise; Request: Absent; Action: Absent
MSI (s) (10:1C) [16:33:20:708]: Component: German; Installed: Absent; Request: Null; Action: Null
...
As a result of this, uninstalling the nested msi never takes place as a member of the administrator group...
Can someone explain this behaviuor?
Thanks in advance
This problem doesn't occur, if we are logged on as the builtin\administrator; but if we are logged on as another member of the administrators group, we have those problems.
Looking at the corresponding (uninstallation) log files shows the following different feature/component states in the nested InstallValidate section:
************** Logged on as buildin\administrator:
...
MSI (s) (10:6C) [16:44:06:214]: Feature: Engine; Installed: Local; Request: Absent; Action: Absent
MSI (s) (10:6C) [16:44:06:214]: Component: German; Installed: Local; Request: Absent; Action: Absent
...
************** Logged on as another member of the administrator group:
...
MSI (s) (10:1C) [16:33:20:708]: Feature: Engine; Installed: Advertise; Request: Absent; Action: Absent
MSI (s) (10:1C) [16:33:20:708]: Component: German; Installed: Absent; Request: Null; Action: Null
...
As a result of this, uninstalling the nested msi never takes place as a member of the administrator group...
Can someone explain this behaviuor?
Thanks in advance
(3) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 10, 2009
04:06 PM
On Windows Server 2008, default UAC configurations of the built-in Administrator account and members of local Administrators group are not entirely identical. If you have not, please refer to User Account Control.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 11, 2009
02:06 AM
The whole uninstallation runs with elevated rights except for the nested installation part, I think. There's a problem identifying the correct feature/component states when not running as buildin\administrator.
Just another confusing thing:
Trying to uninstall the software via "Change/Remove" runs with the logged on user's credentials; there's no elevation dialog, UAC doesn't seem to work in that case. This will lead to uninstallation errors in our case. Any explanations???
Just another confusing thing:
Trying to uninstall the software via "Change/Remove" runs with the logged on user's credentials; there's no elevation dialog, UAC doesn't seem to work in that case. This will lead to uninstallation errors in our case. Any explanations???
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Aug 11, 2009
06:07 AM
I think the scenario described is unlikely. You would want to find out more about Using Windows Installer with UAC.
Running setup.exe with a manifest explicitly requiring Administrator privileges will have the elevation prompt appear at the beginning of installation. Using Programs and Features, formerly Add/Remoev Programs, in Control Panel will evoke msiexec.exe which doesn't require elevation until deferred Execute Sequence. It is setup developer's responsibility to ensure no custom action that makes system changes is scheduled in UI and Immediate Execute Sequence.
groupjm wrote:Change/Remove? One button? Is it an InstallScript MSI project?
The whole uninstallation runs with elevated rights except for the nested installation part, I think.
Running setup.exe with a manifest explicitly requiring Administrator privileges will have the elevation prompt appear at the beginning of installation. Using Programs and Features, formerly Add/Remoev Programs, in Control Panel will evoke msiexec.exe which doesn't require elevation until deferred Execute Sequence. It is setup developer's responsibility to ensure no custom action that makes system changes is scheduled in UI and Immediate Execute Sequence.
groupjm wrote:What exactly happened? It really didn't do anything? Or it did something but changes were rolled back? Any error in the log? Identifying the exact error in the uninstallation or nested uninstallation will be the first step toward finding a solution.
Trying to uninstall the software via "Change/Remove" runs...
groupjm wrote:
the corresponding nested uninstallation custom action is called, but it doesn't do anything.