How to manage files with same name in Wix?

柔情痞子 提交于 2019-12-19 07:48:09

问题


I have some dll compiled either in .Net3.5 or in .Net4.0. (They have the same name)
In wix, I have 2 conditionals features.
Feature A installs .net3.5 dll of my app with ComponentRef Id="Cmp35"
Feature B installs .net4.0 dll with ComponentRef Id="Cmp40"
Features are mutually exclusives, only one feature is installed.

my components:

<?xml version="1.0" encoding="UTF-8"?>  
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">  
    <Fragment>  
        <DirectoryRef Id="INSTALLDIR">  
            <Component Id="Cmp35" Guid="..">  
                <File Id="Behaviors.Assembly" Name="$(var.Behaviors.v3.5.gen.TargetFileName)" Source="$(var.Behaviors.v3.5.gen.TargetPath)" />  
               <File Id="Other.Assembly" Name="$(var.Other.v3.5.gen.TargetFileName)" Source="$(var.Other.v3.5.gen.TargetPath)" />  
           </Component>  
           <Component Id="Cmp40" Guid="...">  
               <File Id="Behaviors.Assembly.4.0" Name="$(var.Behaviors.v4.0.gen.TargetFileName)" Source="$(var.Behaviors.v4.0.gen.TargetPath)" />  
               <File Id="Other.Assembly.4.0" Name="$(var.Other.v4.0.gen.TargetFileName)" Source="$(var.Other.v4.0.gen.TargetPath)" />  
           </Component>  
       </DirectoryRef>  
    </Fragment>  
</Wix>

I have an error during the compilation: error LGHT0204: ICE30: The target file ... is installed in ... by two different components on an LFN system:
It seems I have an issue because the filenames are the same...
Is there a way to manage this? thanks!


回答1:


Those are just warnings from ICE30. If you verified that the Components are truly mutually exclusive then you can ignore the warnings because you did what they told you to. :)




回答2:


I typically get around ICE30 warnings by installing the files to different subdirectories and then using a CopyFile element (DuplicateFile table) to clone the file to the desired directory. This works well when your features or components are mutually exclusive and you want ICE to be quiet.



来源:https://stackoverflow.com/questions/15528097/how-to-manage-files-with-same-name-in-wix

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!