I started to implement code along this line for a MSI project (which I never completed). But what I learned so far is: 1) Create your directory tree and define a Property related to the Directory. 2) Create a custom action which: Calls MsiGetTargetPath to get what the dialog just set. Parses the path, and append the folder. Call MsiSetTargetPath. Call MsiSetProperty. 3) schedule the CA as a DoAction (Immediate Execution) called by a control on your dialog. 4) You will need to make sure that you do not call MsiSetTargetPath if resources have already been installed to that location, but you will also want to add a custom action to the Execute Sequence so that if your package is run without a UI there is a similar change. Good luck!
... View more