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: UAC Maintenace mode -ARP error
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
‎Jul 20, 2010
07:39 AM
UAC Maintenace mode -ARP error
Hi
We have a app.msi file created from install shield. There is no Setup.exe associated with msi.
The msi file is launched from custom executable with msiexec /i command.
The custom executable has manifest file embedded into it. When launched from vista machine which has the UAC enabled, our custom executable gets the consent from the user and launches the msi in elevated mode and this is working perfectly till now.
NOW WHEN THE USER TRIES TO LAUNCH MAINTENANCE MODE FROM ADD/REMOVE PROGRAMS, the first CA which is scheduled just after cost finalize in UI sequence is failing with error code 1721 with return value of 3.
This is pretty much straight forward as msi when launched from ARP will not run with elevated privileges and the CA is failing.
Is there a way when the installer is launched from Add/Remove programs, it should get the consent and launch the msi with elevated privileges ?
I know setup.exe will do this for us. (that it will get the consent and luanch)
But for some reasons, we CANNOT create the setup.exe from installshield.
It has to be a msi file and our custom executable must launch it.
Please provide me the possible solutions.
We have a app.msi file created from install shield. There is no Setup.exe associated with msi.
The msi file is launched from custom executable with msiexec /i command.
The custom executable has manifest file embedded into it. When launched from vista machine which has the UAC enabled, our custom executable gets the consent from the user and launches the msi in elevated mode and this is working perfectly till now.
NOW WHEN THE USER TRIES TO LAUNCH MAINTENANCE MODE FROM ADD/REMOVE PROGRAMS, the first CA which is scheduled just after cost finalize in UI sequence is failing with error code 1721 with return value of 3.
This is pretty much straight forward as msi when launched from ARP will not run with elevated privileges and the CA is failing.
Is there a way when the installer is launched from Add/Remove programs, it should get the consent and launch the msi with elevated privileges ?
I know setup.exe will do this for us. (that it will get the consent and luanch)
But for some reasons, we CANNOT create the setup.exe from installshield.
It has to be a msi file and our custom executable must launch it.
Please provide me the possible solutions.
(4) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 20, 2010
08:45 AM
The custom actions which edit the system should be deferred in system context.
Any immediate action which tries to edit the system will fail if UAC is on.
Any immediate action which tries to edit the system will fail if UAC is on.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 20, 2010
09:01 AM
I can't put it in Installexecute sequence as this has to be executed in UI itself.
It does some pre requisite setup checks which are very custom to the product.
SO IT HAS TO BE IN UI SEQUENCE ONLY. NO OPTION OF PUTTING IT IN DEFERRED
It does some pre requisite setup checks which are very custom to the product.
SO IT HAS TO BE IN UI SEQUENCE ONLY. NO OPTION OF PUTTING IT IN DEFERRED
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 20, 2010
01:40 PM
If you need to elevate your MSI from the ARP, you will need to hide the original UNINSTALL keys and add your own instead which refer to your custom exe. Note that if you intend to support various patching scenarios, getting the updates to the UNINSTALL keys right is very tricky business. See Heath Stewart's ARPSYSTEMCOMPONENT blog series for more information.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Jul 20, 2010
11:37 PM
Thanks a TONN MichaelU,
So according to your suggestion, theres no way to launch msi from ARP with elevated privileges.
I have knowledge on how to hide ARP and how to luanch custom executable. But as you said, hav to consider the patching also.
I will investigate further on this.
Thanks a lot again.
Cheers
So according to your suggestion, theres no way to launch msi from ARP with elevated privileges.
I have knowledge on how to hide ARP and how to luanch custom executable. But as you said, hav to consider the patching also.
I will investigate further on this.
Thanks a lot again.
Cheers
![](/skins/images/CC38E504FC9E1309DC48ACFEB4925670/responsive_peak/images/icon_anonymous_message.png)