Merge module upgrade problems

237 Views Asked by At

I have an MSI/WIX installer project that consists a merge module, which installs drivers for some custom USB hardware.

New versions of the installer are produced regularly, but the merge module has not changed for some time. However, when an installation upgrade is performed with our installer, the installer always re-installs the driver files, and this prompts Windows plug and play to kick in, re-installing device drivers for the USB device.

The intention is for the installer to skip the driver installation if the merge module has not changed. The version number of the merge module is not changing, so this is what I would expect to happen.

Is it the case that the merge module's version number gets subsumed by the main installer? In which case, is it possible to make the installer leave the driver files alone if they've not changed?

As it stands, our build system builds everything from scratch for a release. Perhaps the solution is to include the merge module as a binary dependency, and only rebuild it (and the driver artefacts) when something has actually changed?

1

There are 1 best solutions below

1
On

A merge module is just a bunch of table data / components. Once it's merged into an MSI it doesn't exist. It just doesn't work the way you seem to be conceptualizing it.

Instead, focus on how MSI handles features, components and files in general during major and/or minor upgrades and attack it from that angle.