1. Good. This is really the only correct solution. 2. The Windows Installer manages the folder the Component is installed to for each Product. Thus, changing the installation folder works fine. The KeyPath is just the File or RegistryKey or ODBC Driver (does anybody use this anymore?). Note: you can get things confused if you put a Property reference in the middle of your RegistryKey/@Key.
In your example below, the KeyPath for the Components is the same if it is always "SharedDll". Note: the Windows Installer's special handling of the folder makes it tricky to state the Component Rules. I saw someone regularly stating a simplified version of the Component Rules on Stack Overflow that could lead to confusion like yours. I kept trying to correct the statements as I found them. <smile/> 3. Uninstall is hosed as well. This just does not work. Check out this old blog post about Component Rules and hopefully it helps: http://robmensching.com/blog/posts/2003/10/18/Component-Rules-101 On Thu, Jan 7, 2010 at 1:58 AM, Ondrej Zarevucky <ondrej.zarevu...@fine.cz>wrote: > Hi everybody, > we have more products sharing the same shared libraries and I'd like to > clarify some things, before I proceed. > > 1) Shared component between two products using same KeyPath and same Guid. > - From earlier discussion I understand this is the proper solution and > in my tests everything works perfectly. > > 2) "Shared component" between two products using DIFFERENT KeyPaths, but > SAME Guid. > - I've read > > http://blogs.msdn.com/heaths/archive/2009/12/21/about-shared-components.aspx > , but I don't understand if it is supported solution or just one which > works, because it needs to work for compatibility reasons. > - How should I solve this issue, if the MSIs are authored to use same > KeyPaths, but the user is allowed to change the Target Directory > independently for each install? > Example: > - ProductOne and ProductTwo both use SharedLib.Dll with same Guid; > - ProductOne installs the SharedLib.Dll in FolderOne > - ProductTwo installs the SharedLib.Dll in FolderTwo > > 3) "Shared component" between two products using SAME KeyPaths, but > DIFFERENT Guids. > - I understand the library would get overwritten using the versioning > rules. Will this properly work for uninstalls? I need both products to > work when the other gets uninstalled. > > BTW: For updates we are using Major Upgrades. > > Thank you for clarification. > Ondřej Zarevúcky > > > ------------------------------------------------------------------------------ > This SF.Net email is sponsored by the Verizon Developer Community > Take advantage of Verizon's best-in-class app development support > A streamlined, 14 day to market process makes app distribution fast and > easy > Join now and get one step closer to millions of Verizon customers > http://p.sf.net/sfu/verizon-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > -- virtually, Rob Mensching - http://RobMensching.com LLC ------------------------------------------------------------------------------ This SF.Net email is sponsored by the Verizon Developer Community Take advantage of Verizon's best-in-class app development support A streamlined, 14 day to market process makes app distribution fast and easy Join now and get one step closer to millions of Verizon customers http://p.sf.net/sfu/verizon-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users