I have a type 2 action that's being invoked in the DoAction event of a
PushButton. In Vista, this action works ok when I run the setup elevated. My
setup generally  runs elevated, because it's being run by a bootstrapper.
When not running elevated, the action fails to run with the following error:

 

MSI (c) (44:00) [10:19:01:719]: Note: 1: 1721 2: MyAction 3:
C:\Users\admin\AppData\Local\Temp\MSI278.tmp 4:  

Error 1721. There is a problem with this Windows Installer package. A
program required for this install to complete could not be run. Contact your
support personnel or package vendor. Action: MyAction, location:
C:\Users\admin\AppData\Local\Temp\MSI278.tmp, command:  

MSI (c) (44:00) [10:19:07:157]: Product: My Product -- Error 1721. There is
a problem with this Windows Installer package. A program required for this
install to complete could not be run. Contact your support personnel or
package vendor. Action: MyAction, location:
C:\Users\admin\AppData\Local\Temp\MSI278.tmp, command:  

 

Action ended 10:19:07: MyAction. Return value 3.

DEBUG: Error 2896:  Executing action MyAction failed.

The installer has encountered an unexpected error installing this package.
This may indicate a problem with this package. The error code is 2896. The
arguments are: MyAction, , 

Action ended 10:19:07: MaintenanceWelcomeDlg. Return value 3.

 

My problem is that when uninstalling/changing/repairing, I need the action
to be available. If this is done via the original setup/bootstrapper
combination, everything works ok. But, when run by Programs and Features the
action fails to be elevated, and it doesn't run. I tried several things:

. Using  an ElevationShield didn't work, but I don't think it would have
made any difference anyway. 

. Using NoImpersonate doesn't work because this action runs in the UI
sequence and not in the Execute sequence. 

. The Elevation feature in Wix (Package/@InstallPrivileges = elevated) but
that also changes elevation in the execute sequence and not before. 

 

I really can't run this action at the execute sequence, as it's completely
optional for the user: it shouldn't be enforced but it is something that the
user may need to use.

 

My question is: is there any way to elevate before/during the UI sequence
without using a bootstrapper or any way to ask Programs and Features to
elevate my setup, or is any other action type better for this use (meaning,
maybe a dll doesn't need elevation but an exe always does)? I'm not quite
sure, but I think that the action actually wouldn't require administrative
rights when run by itself, but within the MSI it seems to always need them.
I can't seem to find any information on Google on elevation before the
Execute sequence (except a single link where it says that it's impossible).

 

Thanks,

J

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to