PDA

View Full Version : Feature always visible in Uninstaller



ido_zil
07-26-2004, 12:35 PM
Hi,

When I set "visible" to false on some feature in my project, it is indeed not displayed in the Custom Install in the Installer.

But, it IS displayed in the uninstaller, when the user is asked which features to uninstall.

Is there a way to prevent a feature from being displayed in the uninstaller GUI ?

Thanks

CharlesW
07-28-2004, 07:45 AM
Development has determined this to be working as designed. The reason for this was as follows: By setting a feature to "invisible" you are sort of indicating that the associated feature is always supposed to be installed if the product is to be installed (barring direct intervention by setting\unsetting active states). That is basically like saying that the invisible feature is a constant piece of the product that should be present on the machine if the product is present on the machine.

Just because the uninstall is being run does not mean that the entire product is to be uninstalled. If we were to hide the invisible features and set them to always be uninstalled, then even if you left the product on the machine, running the uninstaller would always be stripping those features off the machine... Magically disabling pieces of the product that you never intended to uninstall.

Our choice to display the invisible features in the uninstall panel was a conscious design choice.... to allow the end user to make that decision whether or not the features should be uninstalled. Personally, I do not agree with the design proposed in the work order. If ANYTHING, the invisible features should be set NOT to uninstall and they would have to set them to uninstall manually (ie. if the root product is set to uninstall).... Since that is not a simple and intuitive thing to do, we chose to display them in the uninstall feature panel instead. Otherwise, the "visible" property would start entering in as a factor in what is/is not uninstalled, which is probably not something that we should be playing with.