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