I want the MSDE merge modules to remain in the system under uninstallation upon one condition I have defined. This modules are included in a Feature. Is there any way to make that feature permanent based on the condition I have (as for components)?
This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Uninstall of feature conditionally
Started by
Augusto
, Oct 24 2001 14:00
4 replies to this topic
Posted 26 October 2001 - 17:40
I don't think that is possible (that easy). I wonder why you want to do this?
Posted 12 November 2001 - 11:30
Well, I have an application that installs MSDE SP1. If MSDE is already installed an in use (by another of my previous applications) I want to upgrade it. The mm are included in one of the features of my new application. Therefore, after installation (and MSDE upgrade) the installation of MSDE is totally dependent of my new application, in the sense that if I uninstall it, MSDE gets also uninstalled, and the first of my applications, still remaining in the computer, does not work any more. I want to avoid this rather tricky situation.
I have found a way, though.
I use the REMOVE property. When ever my application detects (at uninstallation time) that there is someone using MSDE, this will not get uninstall, by simply setting REMOVE equals to all other features, but the one that includes MSDE mm. This has a draw back: In this situation, the machine still will consider the second application as installed, due to the fact that one of its features (the one containing MSDE) is still there. The implications are minimal, therefore I used this solution.
If there is a better way to do it, I'll be very grateful to hear it.
I have found a way, though.
I use the REMOVE property. When ever my application detects (at uninstallation time) that there is someone using MSDE, this will not get uninstall, by simply setting REMOVE equals to all other features, but the one that includes MSDE mm. This has a draw back: In this situation, the machine still will consider the second application as installed, due to the fact that one of its features (the one containing MSDE) is still there. The implications are minimal, therefore I used this solution.
If there is a better way to do it, I'll be very grateful to hear it.
Posted 22 January 2002 - 11:26
I finally did it. It has a draw back though: the application does not appear as uninstalled, because of a simple reason: it is not. As long as any feature of an application is installed in the machine, the application will show up in the add remove window. This was not a biggy for me, so I did it.
If anyone wants to know how, just ask ;)
If anyone wants to know how, just ask ;)
Posted 24 January 2002 - 00:47
A better solution would be to create a separate MSI file that installs the MSDE. That way, you can uninstall your program while still leaving MSDE installed.
The MSDE installer is very simple - a single feature with all of the MSDE merge modules included. Look at SqlRun01.msi (on the SQL Server Developer CD) to get an idea of the UI and execute sequences you need.
When you've got a working MSI for MSDE, create a custom action (type 7, 23 or 39) to run a nested install.