Thanks guys for all your help. Here is what I ended up doing (probably I had not framed my question right about what my requirement was).
Apologies if the explanation is naive, my experience/expertise with Wix is not very sound. - I had two MSI's. The first MSI dropped an exe on the hard drive. Uninstallation of the second MSI required execution of this exe (it could not have been uninstalled with msiexec /x). - Problem was if the first MSI is uninstalled, the exe would get removed thus affecting uninstall of the second MSI. - I started by thinking that uninstall of first MSI should just be blocked if second MSI has also been installed (that's why I asked the question here). - But instead, I went for the easier solution: I also installed the required exe (in the same location as the first MSI, so as to create a shared component) with the second MSI, thus increasing ref count. - The exe basically calls Msiexec /x on multiple MSI's (apart from the two MSI's mentioned), including the second MSI. However, the exe exits immediately after calling Msiexec /x for the "second" MSI, thus paving a way to clean itself up. This basically solved by problem. Thanks again for your suggestions and help. Mandar On Wed, 16 Jun 2010 11:54:38 +0530 wrote >Those registry keys are undocumented, and relying on them will break you. If you need to use UpgradeCodes, you really will need a custom action. -----Original Message----- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Tuesday, June 15, 2010 10:22 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Detecting MSI dependencies Thanks Blair that is useful to know (I can see it in the uninstall log now I look closely). Mandar, I think the other place to look is the key "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\UpgradeCodes" but you need to convert your UpgradeCode to a compressed GUID. Neil -----Original Message----- From: Blair [mailto:os...@live.com] Sent: 16 June 2010 01:56 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Detecting MSI dependencies FindRelatedProdcuts returns without doing any work (a verbose log tells you it is because it is a "maintenance installation"). I wrote a custom action one time that parsed the Upgrade table and set properties (at the time I called it FindRelatedProductsMinor). It might be a good candidate to throw up on codeplex or somewhere... -----Original Message----- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Monday, June 14, 2010 11:05 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Detecting MSI dependencies Ah I didn't realise that, shame really 'cos it would work really well. On uninstall "FindRelatedProducts" is run doesn't that populate the upgrade table? Mandar, You could use a registry search for the product/upgrade code but it is not easy in my experience. Neil -----Original Message----- From: Blair [mailto:os...@live.com] Sent: 15 June 2010 00:34 To: 'General discussion for Windows Installer XML toolset.' Subject: Re: [WiX-users] Detecting MSI dependencies Upgrade table is not checked during uninstall, so that won't work. You will need some other means of detecting the dependent installation(s). -----Original Message----- From: Neil Sleightholm [mailto:n...@x2systems.com] Sent: Monday, June 14, 2010 1:42 PM To: General discussion for Windows Installer XML toolset. Subject: Re: [WiX-users] Detecting MSI dependencies I think you should be able to do this with the Upgrade element: You can then use the OTHERAPPDETECTED property in conditions to block the uninstall. Neil -----Original Message----- From: Mandar [mailto:amazi...@rediffmail.com] Sent: 14 June 2010 21:21 To: wix-users@lists.sourceforge.net Subject: [WiX-users] Detecting MSI dependencies Hi there, Is there a way, during uninstall of an MSI, to detect presence of some other MSI and if so, stop/abort uninstallation informing users of presence of the dependant MSI ? In other words, given MSI's A and B, is there a way to express dependency between A and B so that A cannot be uninstalled if B is installed ? Have been reading and searching extensively to find solutions to this but haven't been able to figure a way out. Any help appreciated. Thanks, Mandar ----------------------------------------------------------------------- - ---- -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------- - ---- -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------- - ------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------- - ---- -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------- - ------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------- ----- -- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ----------------------------------------------------------------------- ------- ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users