I have been tasked with creating an installer that meets the following requirements:
1. Must be able to support multiple instances.
2. Must be able to be deployed using the standard deployment model.
3. Must create and name a website dynamically and unqiue application pool per instance in IIS.
4. Must be able to modify instance settings which includes modifying the web.config on a per instance basis.
Thus far, I've attempted to solve the requirements using Wix, Installshield 2009, and InstallAware without success. The closest I've come has been using Wix, in which I have been able to accomplish everything except the multiple instance problem. I looked at the Multiple Instance Transform Walkthrough posted by Josh Rowe but I think that having to hard-code instance transform guids severly limits the installer. This is a neat approach to the problem in that Josh has figured out a way to create the transforms without using a bootstrapper, however, however in order to check for the transforms can become quite cumbersome when the installer has to check for each individual instance installation prior to assigning the new guid transform. I have been able to create and name both websites and application pools dynamically using Wix. Support for Wix is limited to userlists, which is daunting for someone with no prior installer experience.
For the multiple instance problem, InstallShield 2009 is a work of art. Acresso, the owner of Installshield 2009, has already created a very clean process of dealing with multiple instance transforms. I was very excited when I found this solution. However, yesterday I spoke with customer support who notified me that assigning and creating websites dynamically with InstallShield 2009 is not really supported. The technical support people at Acresso are top notch and very willing to help regardless of the time required to come up with an answer. My general opinion of the technical support people from Acresso is that they go out of their way to help their customers. Kudos Acresso. I am hoping to receive an answer back from them today as towhether Installshield 2009 will handle this problem.