Missing Elevation Shield on Remove?

5 messages Options
Embed this post
Permalink
Quinton Tormanen

Missing Elevation Shield on Remove?

Reply Threaded More More options
Print post
Permalink
I am using WiX 3.0.5217.0 with WixUI_InstallDir. If I put the installer
in maintenance mode and click the Remove option, then on the verify page
(Ready to remove RMCTools 3.33.0d), the Remove button is missing the
elevation shield. It shows up on a new Install (when the button is
labeled Install). I have the following entry under the <Product>
element: <Property Id="ALLUSERS" Value="1" />

 

The source (VerifyREadyDlg.wxs) appears to be based on ALLUSERS. What am
I missing?

 

Quinton Tormanen

Software Engineer

Delta Computer Systems, Inc.

http://www.deltamotion.com <http://www.deltamotion.com/>

 

------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Bob Arnson-6

Re: Missing Elevation Shield on Remove?

Reply Threaded More More options
Print post
Permalink
Quinton Tormanen wrote:
> I am using WiX 3.0.5217.0 with WixUI_InstallDir. If I put the installer
> in maintenance mode and click the Remove option, then on the verify page
> (Ready to remove RMCTools 3.33.0d), the Remove button is missing the
> elevation shield.

Assuming the right button is being shown, MSI can still not show the
shield, if the user running the uninstall already has elevated privileges.

--
sig://boB
http://joyofsetup.com/



------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Quinton Tormanen

Re: Missing Elevation Shield on Remove?

Reply Threaded More More options
Print post
Permalink
Bob Arnson wrote:
> Quinton Tormanen wrote:
> > I am using WiX 3.0.5217.0 with WixUI_InstallDir. If I put the
installer
> > in maintenance mode and click the Remove option, then on the verify
page
> > (Ready to remove RMCTools 3.33.0d), the Remove button is missing the
> > elevation shield.
>
> Assuming the right button is being shown, MSI can still not show the
> shield, if the user running the uninstall already has elevated
privileges.

I launch the installer without elevation (no UAC prompt), and after I
click the Remove button, it pops up with UAC prompt. It seems that both
of these indicate that the uninstall didn't already have elevated
privileges at the time the Remove button was displayed.

I am wondering if this has something to do with ALLUSERS not being set
up at this point in maintenance mode. Recall that I do have a simple
<Property Id="ALLUSERS" Value="1"/> under the Product element so I
expect that it would be.

I'll do some more digging into the log and try to determine whether it's
MSI hiding the shield or the conditions showing the wrong button (e.g. I
can simply change the text on one of the buttons to determine this).
I'll post back with what I find.

Thanks, Bob.

--Quinton

------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Quinton Tormanen

Re: Missing Elevation Shield on Remove?

Reply Threaded More More options
Print post
Permalink
Bob Arnson wrote:
> Assuming the right button is being shown, MSI can still not show the
> shield, if the user running the uninstall already has elevated
> privileges.

As you suggest, Bob, I found that the right button is being shown, but
MSI isn't showing the shield. It appears to be because
MsiRunningElevated being set in the MSI (c) section when in maintenance
mode instead of MSI (s) like it is for the original install.

I don't know why MsiRunningElevated is set this way so early, because it
isn't really running elevated. That is, I'm not prompted for elevation
until I proceed with the Removal. It seems like a bug in MSI to me, but
perhaps it was required for other reasons. I found a thread in wix-users
from 2007 ("Shield Decoration on buttons") that discusses this, but
doesn't really answer why MsiRunningElevated got set so early.

--Quinton

-----Original Message-----
From: Quinton Tormanen [mailto:[hidden email]]
Sent: Friday, July 03, 2009 7:43 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Missing Elevation Shield on Remove?

Bob Arnson wrote:
> Quinton Tormanen wrote:
> > I am using WiX 3.0.5217.0 with WixUI_InstallDir. If I put the
installer
> > in maintenance mode and click the Remove option, then on the verify
page
> > (Ready to remove RMCTools 3.33.0d), the Remove button is missing the
> > elevation shield.
>
> Assuming the right button is being shown, MSI can still not show the
> shield, if the user running the uninstall already has elevated
privileges.

I launch the installer without elevation (no UAC prompt), and after I
click the Remove button, it pops up with UAC prompt. It seems that both
of these indicate that the uninstall didn't already have elevated
privileges at the time the Remove button was displayed.

I am wondering if this has something to do with ALLUSERS not being set
up at this point in maintenance mode. Recall that I do have a simple
<Property Id="ALLUSERS" Value="1"/> under the Product element so I
expect that it would be.

I'll do some more digging into the log and try to determine whether it's
MSI hiding the shield or the conditions showing the wrong button (e.g. I
can simply change the text on one of the buttons to determine this).
I'll post back with what I find.

Thanks, Bob.

--Quinton

------------------------------------------------------------------------
------
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users
Bob Arnson-6

Re: Missing Elevation Shield on Remove?

Reply Threaded More More options
Print post
Permalink
Quinton Tormanen wrote:
> As you suggest, Bob, I found that the right button is being shown, but
> MSI isn't showing the shield. It appears to be because
> MsiRunningElevated being set in the MSI (c) section when in maintenance
> mode instead of MSI (s) like it is for the original install.
>  

Interesting. MSI doesn't require consent for all maintenance-mode
installations. Repairs and feature removal, for example, run without
consent. (The idea being that an admin already said it was OK to install
these things.) Uninstalling the entire product does, however; I'm not
sure why MSI doesn't show the shield. I suspect it's because it doesn't
look at the button's Remove control event to see that it wants to remove
all features. If you're curious enough, try setting the REMOVE property
to ALL on the command line; I wonder if that would be enough to make MSI
notice...

--
sig://boB
http://joyofsetup.com/



------------------------------------------------------------------------------
_______________________________________________
WiX-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/wix-users