I am newbie to Wix and creating a multi feature Wix project. Our product is having 4 modules and each module has to be included as a feature in the Windows installer. But all features are sharing the same folder structure.
I am using commandline to build my Wix project. After harvesting every module into different wxs fragments, the light.exe giving error saying that duplicate id in the dirercoty table.
My file tree is look like...
ModuleA - Core |--bin |--etc | |--mgr |--lib |-- a.txt ModuleB |--bin |--etc | |--mgr |--lib |-- b.txt ModuleC |--bin |--etc | |--mgr |--lib |-- c.txt
I am using following commands...
@echo Harvesting target files.... heat.exe dir .\Mod1 -cg Mod1ComponentGroup -nologo -gg -scom -sfrag -sreg -srd -ke -dr INSTALLLOCATION -var var.mod1files -out Mod1Files.wxs heat.exe dir .\Mod2 -cg Mod2ComponentGroup -nologo -gg -scom -sfrag -sreg -srd -ke -dr INSTALLLOCATION -var var.mod2files -out Mod2Files.wxs heat.exe dir .\Mod3 -cg Mod3ComponentGroup -nologo -gg -scom -sfrag -sreg -srd -ke -dr INSTALLLOCATION -var var.mod3files -out Mod3Files.wxs @echo Compile modules.... candle.exe -nologo myproj.wxs Mod1Files.wxs Mod2Files.wxs Mod3Files.wxs -dmod1files =.\Mod1 -dmod2files=.\Mod2 -dmod3files=.\Mod3 @Creating MSI... set msi_name=MYProduct.1.0.12345.Win32.msi light.exe -nologo -ext WixUIExtension -cultures:en-us myproj.wixobj Mod1Files.wixobj Mod2Files.wixobj Mod3Files.wixobj -o %msi_name%
Is there any way to avoid the Duplicate ID error?
Any help would be really appreciated.
Thanks in Advance.
Muthu
If you were using Merge Modules this would be ok because each ID would be appended with a unique module ID. ( dir1.GUIDA, dir1.GUIDB, dir1.GUIDC ) If you are using fragments you either have to change the ID's or normalize the directory structure into a single wxs and use a DirectoryRef to pull it into your other wxs with your components.
I'm not sure Heat can handle all of this automatically. It's really just more of a starting point.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With