You might want to consider a change of approach in deploying your product, meaning organizing your product into features. Keep the website in one feature, and the rest of your product in one/other features. Thus users can uninstall the part of your product they don't need while leaving the website feature intact and installed on their computers. This way, they will be able to remove it properly if they decide to do so later on.
If you still decide to not follow the above suggestion, you can work around your issue by going to the Table Editor page and selecting InstallExecuteSequence. Find the AI_IIsUninstall custom action and condition it not to run during an uninstall.
However leaving your website on your users' computers with your product uninstalled is not recommended.
Gabriel,
Our installer is broken into different features such as Websites and Databases.
Our current process for giving our customers updates to our software is to do an upgrade.
We have multiple products using the Advanced Installer software. Each of them installs one or more Virtual Directories under the same website. Currently when one of the products is upgraded or uninstalled it is effecting other products' Virtual Directories as well as the top level website that contains them. We cannot have it effecting the other products.
Gabriel,
The installer to our products creates a Website under IIS named Visual Software. It then creates a Virtual Directory for each product. Since both products use the Visual Software website if we do an upgrade to one of the products or an uninstall it removes the Visual Software Website and then recreates it. However when it removes we lose the Virtual Directories for our other product.
We have studied the problem and it appears that there is indeed an issue with this scenario.
A fix has already been made and it will be available in the very next release which is due to come out soon.
In the meantime we can provide you with the fix via email (support at advancedinstaller dot com) should you need it urgently.
On another note, will this new release have the ability to set the SSL port in IIS?
This feature is not yet implemented in this new release, however it is amongst our top IIS priorities and will be available in a future version of Advanced Installer.
There is no direct option in IIS page to disable the uninstall operation of your web site. However, this can be accomplished very easily if you have an Enterprise license.
Just go to Table Editor page, in "InstallExecuteSequence" table and set a false condition on action "AI_IIsUninstall", for example "1=2".
This will make the uninstall action that removed all that was installed from IIS page to never be executed.
Very important! Please note that this setting will make the package never to remove all the web sites/virtual directories/web apps/application pools installed
from IIS page. You cannot set the package to skip the uninstall operation for just a certain web site from that page.