cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

User healing outside of predefined folders?

I need to be able to create a "user" directory (target path for all of the user components for my app) based on a user environment variable. When I install the application via administrator and then logon as a regular user I need the application to heal itself and create a new "user" directory based on that user's environemnt variable.

I've been able to get the MSI to install properly as admin (using Admin's environment variable) but when I logon as a restricted user the application "heals" but does not re-evaluate the "user" directory path. The user files remain in the "admin" enviro path and the healing only populates the user registry info.

If I use a predefined folder like APPDATA everything works fine (the files populate based on the user's APPDATA path) The problem is that I can't use one of the predefined folders and must create my own.

Does anyone know what I have to do to get the MSI to re-evaluate the user file component path when healing?

I've done a search for this info but can't find anything that deals specifically with my problem. I would appreciate any help/comments.

Cheers,
Ian
(2) Replies
I don't think that MSI can cope with changes to component destinations on a per user basis.
Have a look at the restrictions in the MSI help
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/msi/setup/changing_the_target_location_for_a_directory.asp

It looks like a script is needed to create these folders.
You need to ensure there is either a key file or key registry value (preferable) associated to the component creating the user folder. The key registry value should obviously be under the HKCU hive, normally you would have something like HKCU\Software\Your Company\Misc Config Settings
if you see what I mean, its handy to keep all this sort of stuff in one place.