[wix-users] Driver uninstallation

Edwin Castro egcastr at gmail.com
Sat May 16 11:39:50 PDT 2020


And hope that the other manufacturers do the same as well...

--
Edwin G. Castro


On Sat, May 16, 2020 at 5:41 AM Christopher Painter via wix-users <
wix-users at lists.wixtoolset.org> wrote:

> BTW, since the approach I mentioned in my last message probably won't
> happen, perhaps it's time to break the rules intentionally.
>
> You could install the files to your own directory and then just use a
> custom action to install your version of the driver if the driver is not
> present or older.   MSI wouldn't know about this so the component rules
> could be ignored.    The intent of the component rules would have to be
> honored by your custom action though.  Don't go overwriting newer versions
> of the driver with your driver.
>
> ________________________________
> From: wix-users <wix-users-bounces at lists.wixtoolset.org> on behalf of
> Matthias Reuss via wix-users <wix-users at lists.wixtoolset.org>
> Sent: Friday, May 15, 2020 11:32 AM
> To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
> Cc: Matthias Reuss <matthias.mr.reuss at wsa.com>
> Subject: Re: [wix-users] Driver uninstallation
>
> Yes, a shared *component* should look identical in all products.
>
> Here, the situation is a bit more complex:
>
> The applications sharing that driver are from different manufacturers,
> none of which is the manufacturer of the driver. Of course, each of these
> applications has its own target directory. We (and some others) do install
> a “local copy” of the driver to a subfolder of our target directory. This
> copied INF file is the key path of the INF component (code shown below)
> that then also contains the driver installation call.
> So the component (and in particular its key file) is not shared, but the
> driver is.
> I agree that this is not good installer design, but for an alternative,
> all manufacturers deploying that driver would have to agree on a common
> location to install the driver files, which does not sound practicable.
>
> In general, I do not think that component referencing logic is suitable
> for shared drivers, since a driver is not just part of an application
> software, but also belongs to one ore more devices that may exist and may
> have to be functional regardless of the application(s) that first installed
> the driver.
>
> So I would rather consider it dangerous to remove a driver, and rather
> default to not removing it on application uninstall.
>
> DIFX – at least the MSI adaptation of DIFX – seems not to supply this
> flexibility.
>
> BTW: Is there still a need to tie driver installation to a local copy of
> the driver? There is the copy in the DriverStore, an IMHO that should be
> enough.
>
> --
>
> Matthias Reuss
>
> Von: Edwin Castro <egcastr at gmail.com>
> Gesendet: Donnerstag, 14. Mai 2020 23:30
> An: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
> Cc: Matthias Reuss <matthias.mr.reuss at wsa.com>
> Betreff: Re: [wix-users] Driver uninstallation
>
> A shared component should look identical in all products. Same component
> guid and same keypath (which implies files should be installed to the same
> common shared directory, perhaps under C:\Program Files\Common
> Files\MyCompany\Drivers) and same resources in the component. Wixlibs can
> be useful in ensuring shared components are identical between products.
>
> Alternatively, you could have a product that installs the shared component
> and use a burn bundle to install the shared driver msi and the application
> msi package.
>
> No matter how you fix this into the future for systems that haven't had
> any of the applications installed you will still need a strategy to fix up
> already installed systems. You may need to uninstall all old applications
> and replace them with new fixed applications. Didn't think through that too
> much.
>
> --
> Edwin G. Castro
>
>
> On Thu, May 14, 2020 at 6:05 AM Matthias Reuss via wix-users <
> wix-users at lists.wixtoolset.org<mailto:wix-users at lists.wixtoolset.org>>
> wrote:
> Hello,
>
> we are installing some drivers with our software that are shared with
> other applications, i.e. there are some other installation packages that
> contain the same drivers.
>
> We use the DifXApp extension to install the drivers, using components like
> the following:
>
> <Component Id="SharedDriver_INF" Guid="{ANY-GUID}">
>     <File Id="SharedDriver.inf" Name="SharedDriver.inf" KeyPath="yes"
> Source="$(var.DriverSourcePath)\SharedDriver.inf" />
>     <File Id="SharedDriver.cat" Name="SharedDriver.cat"
> Source="$(var.DriverSourcePath)\SharedDriver.cat" />
>     <DifxApp:Driver AddRemovePrograms="no" PlugAndPlayPrompt="no"
> Sequence="12" />
> </Component>
>
> Where the target directory of the component is c:\Program
> Files\MyCompany\Drivers\SharedDriver, i.e. a subfolder of the installation
> directory.
>
> On uninstall, this does not only remove the "private" copy of the driver
> from that target directory, but also calls the driver uninstallation, which
> in turn may affect other software.
>
> How do I alter this behaviour, i.e. remove the files that installation
> copied to the installation directory, but not uninstall the driver, so that
> the device can still be used?
> I have not seen a matching attribute to DifxApp:Driver.
>
> Best regards
>
> Matthias Reuss
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant
> http://www.firegiant.com/<
> https://eur02.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.firegiant.com%2F&data=02%7C01%7Cmatthias.mr.reuss%40wsa.com%7Cc078c693fbd2477d999308d7f84df79a%7C1a41b96d457d41ac94ef22d1901a7556%7C0%7C0%7C637250886061058606&sdata=ozxtdTz8MsoJIretWaRMFpxIYwxr%2Fv91%2Fsnq%2FwZQ3m0%3D&reserved=0
> >
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant
> http://www.firegiant.com/
>
> ____________________________________________________________________
> WiX Toolset Users Mailing List provided by FireGiant
> http://www.firegiant.com/
>



More information about the wix-users mailing list