[wix-users] How to install 2 components with same file content with one difference
Marc Beaudry
mbeaudry at matrox.com
Thu Mar 25 14:46:20 PDT 2021
Thanks for the prompt reply,
but my cab files have duplicated files based on my File ID name, if I use
the same File ID in both components I get this error:
error LGHT0091: Duplicate symbol (Can I suppress the error like ICE errors
can be suppressed?)
I must be missing something, one installer, 2 components with the same
files, on component has the extra difx line in it and the install condition
is different.
Regards,
Marc
-----Original Message-----
From: Rob Mensching [mailto:rob at firegiant.com]
Sent: March-25-2021 5:13 PM
To: WiX Toolset Users Mailing List
Cc: Marc Beaudry
Subject: RE: [wix-users] How to install 2 components with same file content
with one difference
Don't worry about it. Smart cabbing will prevent any duplication in the
source media and separate mutually exclusive Components per-OS are totally
reasonable here.
---
Short replies here. Complete answers here:
https://www.firegiant.com/services/
-----Original Message-----
From: wix-users <wix-users-bounces at lists.wixtoolset.org> On Behalf Of Marc
Beaudry via wix-users
Sent: Thursday, March 25, 2021 2:08 PM
To: 'WiX Toolset Users Mailing List' <wix-users at lists.wixtoolset.org>
Cc: Marc Beaudry <mbeaudry at matrox.com>
Subject: [wix-users] How to install 2 components with same file content with
one difference
Hello Wix-Users
I am looking at different options on how to install the same Windows driver
on both Server 2016 and Windows 10. The installation part works well, but
Server 2016 does NOT offer the same functionality to uninstall.
Before writing a CA to uninstall a driver on Server 2016 which will use
SetupDiRemoveDevice from the SetAPI, I was wondering if I can do this using
purely wix functionality.
- difx:driver works well on server 2016 but is deprecated in the later
versions of Windows 10. Under Windows 10 I now use a CA that calls
DiUninstallDriver from newdev.dll, that uses a reference INF, This is not
supported in server.
So here is my plan, but I don't think Wix supprts this. Ideally I would have
one component that install on both OSes then on Windows 10 have my CA run
and Server 2016 have difx run based on the one component, but from what I
understand it's not how difx works, it needs to be in its own component.
Any advice?
<DirectoryRef Id='INSTALLFOLDER'>
<Directory Id="DriverFolder" Name="MyInstaller" >
<Component Id='Windows10Driver' Guid='Place GUID here'
Win64="yes">
// All my driver files listed here
<File Id='---' Name='DriverFiles.sys' DiskId='3'
Source='PathToMyFiles\DriverFiles.sys' KeyPath='no'/>
<Condition>ISWINDOWS10 = 1</Condition>
</Component>
<Component Id='WindowsSrv2016Driver' Guid='Place GUID here'
Win64="yes">
// All my driver files listed here (SAME FILES AS ABOVE)
<File Id='---' Name='DriverFiles.sys' DiskId='3'
Source='PathToMyFiles\DriverFiles.sys' KeyPath='no'/>
<difx:Driver AddRemovePrograms="no" Legacy="yes"
PlugAndPlayPrompt="no" Sequence='1' />
<Condition>ISSERVER2016 = 1</Condition>
</Component>
</Directory>
</DirectoryRef>
Thanks for your help,
Marc
____________________________________________________________________
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