使用WIX将现有本地文件复制到InstallDir

时间:2017-04-25 20:33:45

标签: wix

我正在创建一个WIX安装程序,我希望它能够查找用户计算机上可能存在或可能不存在的特定本地XML文件。如果找到它,我希望它只是将其与所有正在部署的dll一起复制到InstallDir。

这可以用CustomAction完成吗?

类似的东西:

        <Property Id="SETTINGSXMLFOUND">
        <DirectorySearch Id="x86FolderLocation" Path="[ProgramFilesFolder]\FolderA\bin">
            <FileSearch Id="My_FileSearch" Name="*.xml" />
        </DirectorySearch>
    </Property>

    <Condition>
        <![CDATA[Installed AND SETTINGSXMLFOUND]]>
        <CopyFile ... </CopyFile>
    </Condition>

1 个答案:

答案 0 :(得分:0)

条件元素只能包含Component,Control,Feature,Fragment,PermissionEx或Product作为父项。 CopyFile也只接受Componet或File as Parent。那么也许一个组件可以工作?我没有对此进行测试,但这可能有效:

<Component Id="FileCopyComponent" Guid="*">
    <Condition><![CDATA[Installed AND SETTINGSXMLFOUND]]></Condition>
    <CopyFile Id="MyFileCopyId" FileId="MyFileId" DestinationDirectory="MyCopyDir"  />
</Component>