One more point I should make: Windows Installer differentiates between File resources and other resources (like Registry, etc.). Thus, if the shared component has registry and file both (such as COM registrations) the uninstall will remove the files but not touch the registry entries, so COM will remain pointing to the last installed/updated location (which may be the one you just removed, thus breaking COM). If you are installing files that are registered (their locations are written somewhere, like the registry) you probably want to place those components into a common location (unless you need SxS, in which case you need to look at fusion). Otherwise it is safe to place them in the "parent" product's installation dir. That doesn't change whether you are building MSMs or WixLibs. From: os...@live.com To: wix-users@lists.sourceforge.net Subject: RE: [WiX-users] Practical use of wixlibs Date: Wed, 2 Oct 2013 12:01:14 -0700
Sort of obscure not-detailed-enough half-mentions on MSDN? For deep technical dives into Windows Installer Heath is my go-to resource. > From: nicolas.alva...@gmail.com > Date: Wed, 2 Oct 2013 15:45:52 -0300 > To: wix-users@lists.sourceforge.net > Subject: Re: [WiX-users] Practical use of wixlibs > > That's extremely enlightening. I thought having two components in > different products with the same GUID but different installation > directories would be a blatant break of component rules and would just > not work. "Allowing uninstallation of shared component. Other clients > exist, but installed to a different location." was totally unexpected > to me :) > > Is this documented anywhere other than blogs? > > I think I read *all* of Rob's blog. It looks like Heath Stewart's blog > will be my next time sink. > > -- > Nicolás > > 2013/10/2 Blair Murri <os...@live.com>: > > See > > http://blogs.msdn.com/b/heaths/archive/2009/12/21/about-shared-components.aspx > > > >> From: nicolas.alva...@gmail.com > >> Date: Tue, 1 Oct 2013 00:51:36 -0300 > >> To: wix-users@lists.sourceforge.net > >> Subject: [WiX-users] Practical use of wixlibs > >> > >> I can't find any documentation on best-practices when creating either > >> merge modules or wixlibs, only procedure documentation on how to > >> create them. > >> > >> Let's say I create a wixlib (or msm) with multiple components that > >> make up a large C++ library. Someone making an application with that > >> library can then use the wixlib and only write installation code for > >> his own app files, instead of having to also define the installation > >> of the library. > >> > >> But where would the library be installed? Would the wixlib need to > >> have a Directory under (say) Common Files where the library would go? > >> > >> Or can the wixlib provide a way for the application wxs to decide > >> where the library would be installed? But then there's a problem: two > >> applications importing the same wixlib could install the same > >> components (with same GUID) in different directories. As far as I know > >> that means only the first one would get installed, the second would > >> see the component is already installed (identified by GUID) and do > >> nothing. > >> > >> Does anyone have experiences to share? > >> > >> -- > >> Nicolás > >> > > ------------------------------------------------------------------------------ > October Webinars: Code for Performance > Free Intel webinars can help you accelerate application performance. > Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from > the latest Intel processors and coprocessors. See abstracts and register > > http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ October Webinars: Code for Performance Free Intel webinars can help you accelerate application performance. Explore tips for MPI, OpenMP, advanced profiling, and more. Get the most from the latest Intel processors and coprocessors. See abstracts and register > http://pubads.g.doubleclick.net/gampad/clk?id=60134791&iu=/4140/ostg.clktrk _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users