[wix-users] Modifying existing merge module components

Matthew Stickney mstickney at compassmax.com
Fri Aug 26 10:36:49 PDT 2016


My goodness that was fast! I promise you that I searched for this
before I posted, but only found result for people authoring merge
modules /from/ wxs files.

Thanks for the tip.

-Matt Stickney

On Fri, Aug 26, 2016 at 1:33 PM, Rob Mensching <rob at firegiant.com> wrote:
> melt for .wixlib or dark for .wxs
>
> _____________________________________________________________
>  Short replies here. Complete answers over there: http://www.firegiant.com/
>
>
> -----Original Message-----
> From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Matthew Stickney
> Sent: Friday, August 26, 2016 10:32 AM
> To: wix-users at lists.wixtoolset.org
> Subject: [wix-users] Modifying existing merge module components
>
> I've got an installer that pulls in a merge module from a third-party vendor. This module happens to have a number of issues, most significantly that it registers a bunch of COM files with SelfReg, which has caused instability in the field. Since the SelfRegModules action isn't scheduled by default, and the module has been out of service for years, I was hoping to author the registration entries myself.
>
> The trouble I'm having is that there isn't a way to add e.g. TypeLib elements to a File that has been defined elsewhere, even though it would strictly add entries to the msi tables if advertising was off.
>
> I tried using a FileRef as the parent of the TypeLib, but that's forbidden by the schema.
>
> I tried creating a duplicate File element, but DirectoryRef apparently can't find the directory symbol from the merge module, and this seems fragile if the merge module.
>
> The only other thing I can think of is to try to capture the raw registry entries myself, but I'm not sure that would do the right thing with self-repair, and there are some platform issues like getting file paths for 32- and 64-bit systems.
>
> Is there a reasonable way to accomplish this? Taking the nuclear option, is there a way to harvest the merge module into wxs files that I can modify? If not, could TypeLib be allowed as a child of FileRef if advertise=no (or perhaps get a FileRef attribute for use as a child of Component) in a future version?
>
> -Matt Stickney
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


More information about the wix-users mailing list