> Hmm... I see a problem. I don't want my bootstrapper to run as admin, so it > won't have access to the protected areas like Program Files. The reason I > don't want to run as admin is because then it won't be able to launch stuff on > behalf of the logged in user (which may be different from the admin). This is > getting hairier and hairier.
Don't worry about launching a program as the logged in user. This can be done in Windows Installer (and thus WiX) fairly easily. When a MSI is launched the Windows Installer engine executes the InstallUISequence and the InstallExecuteSequence in the context of the logged on user. The purpose of the InstallUISequence is to gather information from the user. The purpose of the InstallExecuteSequence is to schedule the actions that will change the system (producing an install script). The Windows Installer engine then gives the generated install script to a server-side process that runs under the appropriately elevated privileges to change the system. You can specify whether you want custom actions to impersonate the logged on user. When you specify the program to launch at the end of your install, you'll just need to specify that you do want it to be impersonated. The standard WiX UI provides a built-in mechanism to launch programs in this fashion at the end of the UI. What bothers me is that you are deciding whether your installer will need admin privileges or not based on your decision to launch an executable. The installer should dictate whether you need admin privileges or not depending on whether you _need_ to modify protected system resources (such as ProgramFiles). If the program should be installed on a per-user basis (ie, multiple times per system, if there are multiple users on the system) then you should install the application in the user's profile _and_ maintain per-user configuration. If you need to install only once per system, and maintain only a single system-wide configuration, and the program should be available to all users, then you should install in ProgramFiles (requiring admin privileges). Edwin G. Castro Software Developer - Staff Electronic Banking Services Fiserv Office: 503-746-0643 Fax: 503-617-0291 www.fiserv.com Please consider the environment before printing this e-mail ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users