Hello,

I'm trying to put together a set of installers for multiple products that share 
a large collection of non-versioned files.

The shared resources are packaged into a merge module, which is included in the 
installer for each of the other products. The shared resources should only be 
installed once on the system. Component reference counting (combined with a 
component search to ensure the keypath for each component's file is correct) 
works well for this. -- The ideas is that if I install product A, then product 
B (different product and upgrade codes, obviously) and then uninstall one of 
them, the files should still be there.

The problem I'm having is that I don't want the shared resources to be 
downgraded, so if an older version of product A is installed after a newer 
version of product B, the files stay at the newer version. (The products will 
work with a newer version than the one they ship with, but not an older.) -- 
Currently, the installer verifies that the component guid and keypath are the 
same, but determines that the hash and modification date are different (it 
doesn't seem to care which is in the future) and so replaces the files with the 
older version.

The files are data files and I can't embed a version resource. I looked into 
making them companion files of something that is actually versioned, but they 
are split across a large number of directories and I think I'd have to put a 
dummy DLL in each one to be the component's keypath to get this to work, which 
is not something I'd like to do.

Using a bundle would probably work for this. I could build the shared resources 
into their own MSI which would handle the versioning the way I want -- but one 
of the requirements I have is that the thing should be deployable via GPO. I'd 
also prefer not to have a separately-uninstallable item for them.

Is there a way to achieve what I want? If I could find a way of having MSI only 
install the files if newer in the package, or artificially versioning the files 
some somehow it would probably solve my problem but neither of these things 
seem possible.

Thanks,
Simon

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to