I was working recently on an InstallShield installer for our IISADMPWD Replacement solution and ran into an error when the product was uninstalled. The error message dialog below shows the full error details and the main part follows.
Error 1722.There is a problem with this Windows Installer package. A program run as part of the setup did not finish as expected. Contact your support personnel or package vendor.
This error occurred because a Windows installer custom action (CA) we needed during installation—setting a value for an IIS application pool—ran on uninstall after the app pool had been removed. A simple condition for running the custom action resolved the issue by only running the CA when the application was not being uninstalled. Simply add the following condition to any action in your install sequence to exclude it from running on uninstall.
Installers can be a pain to develop and this can help you ensure you only run the custom actions you need at the right time.