Are you using Burn to deploy your install?  If so it seems like you'd want to 
create a patch for your A install and distribute it with the B bundle. Even if 
the feature isn't currently selected, the patch would update it such that if 
they went to modify A and chose to add the feature that it would install the 
updated versions. The one thing you won't be able to prevent, is if they 
install B before A. If the files are shared components it shouldn't be a 
problem as the newer version would win out over the older version, but then the 
A install wouldn't be installing the component as a newer version would be 
detected.

It's not good practice for installer B to try to modify installer A's files.

Are these truly shared components or are they just the same files used by two 
applications?  Do they require COM/registry settings?



-----Original Message-----
From: Parkes, Kevin [mailto:kevin.par...@wacom.eu] 
Sent: Friday, July 18, 2014 11:24 AM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Shared components problem

Due to lack of foresight and inexperience when I was new to WiX, I've gotten 
myself the following problem:

I have 2 product installers, A & B. Each contains 2 DLLs, X & Y.
A always installs both X & Y to folder M B (optionally) installs X to M and Y 
to another folder, N

A is a released product and I cannot change its installer anytime soon

I am working on an update (major upgrade) to B and the new versions of X & Y 
are incompatible with the old versions. This means that if A is already 
installed, I need B to update Y in *both* folders.

I've added a ComponentSearch to B to find the component Id corresponding to Y 
in A (and install a 2nd copy of Y if found). This seems to work OK if I simply 
install A then B.

However, if I install B without X & Y, then install A, then re-run B to add X & 
Y, the copy of Y in M (A's copy) is not updated.

I think the following from the log file may be relevant (COMPONENT_Y is 
conditional on COMPONENT_Y_PATH, which, it appears, isn't be set):

MSI (c) (50:78) [16:52:05:868]: Doing action: AppSearch Action 16:52:05: 
AppSearch. Searching for installed applications Action start 16:52:05: 
AppSearch.
AppSearch: Property: COMPONENT_Y_PATH, Signature: COMPONENT_Y_search MSI (c) 
(50:78) [16:52:05:868]: Note: 1: 2262 2: Signature 3: -2147287038 Action ended 
16:52:05: AppSearch. Return value 1.
...
Component: COMPONENT_Y; Installed: Local;   Request: Null;   Action: Null

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and search 
up to 200,000 lines of code with a free copy of Black Duck Code Sight - the 
same software that powers the world's largest code search on Ohloh, the Black 
Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to