We have an ASP.NET 2.0 application that is available as a trial download. As such, we have no control over the environment into which it will be installed. Despite all our efforts to produce a reliable installer, we still get a lot of users reporting problems.
We generate compiled .net files using a web deploy project. We then take the output and run it through a VS 2010 Deployment Project to generate an msi installer.
Here are just a couple of the issues we encounter:
- It appears that the msi installer does not work well with IIS7. In order for it to install correctly, IIS6 compatibility needs to be installed otherwise it just fails with no error.
- Even though "RemovePreviousVersions" is set to true, the installer almost never uninstalls the provious version and just throws an error saying that the application is already installed.
We have previously tried using an InnoSetup installer. It worked to a certain extent, but we had problems with the installed application connecting to the wrong app pool and never found a way to define the app pool via the InnoSetup script.
Can somebody give me a definitive list of what you need to get an ASP.NET application up and running on a Windows XP or later machine that has an unknown configuration? e.g. check .NET 2.0 is installed, check II6 is installed, copy files to x, create virtual directory etc.
Even better, does anybody know of an installer (or InnoSetup extension) that does most of the setup for you?