如何在wix工具集中的一个组件中导入多个文件

时间:2015-04-02 14:39:19

标签: wix

我正在开发Wix Toolset设置项目。我需要将文件添加到我的安装程序包中。有很多dll,我将它们分别包括在内。

<DirectoryRef Id="APPLICATIONROOTDIRECTORY">
    <Component Id="MyApplication" Guid="53BF1BB4-FEC5-4D6C-AEA3-2D7DE0021695">
        <File Id="MyApplication" Source= "$(var.ServiceAppSourceDir)\MyApp.dll" KeyPath="yes" Checksum="yes"/>
    </Component>
    <Component Id="ExampleFile" Guid="5C7CF06D-420E-44E0-91EC-DE8D55D1E6E8">
        <File Id="ExampleFile" Source="$(var.ServiceAppSourceDir)\ExampleFile.dll" KeyPath="yes" Checksum="yes"/>
    </Component>
</DirectoryRef>

<Feature Id="MainApplication" Title="Main Application" Level="1">
    <ComponentRef Id="MyApplication" />
    <ComponentRef Id="ExampleFile" />
</Feature>

我只包含2个,但我的应用程序中有超过30个dll要导入。如何在一个组件中导入所有dll? 我尝试使用“* .dll”没有用。任何建议?

1 个答案:

答案 0 :(得分:1)

如果您的问题是您正在寻找一种自动添加文件的方法,那么我就来看看WiX的收割机工具(heat.exe) - {{3 }}

基本思想是你可以将heat.exe指向构建输出目录树,它将生成一个.wxs文件,其中构建树中的每个文件都有自己的组件。这样,如果将来添加更多文件,您将不必更改安装程序源代码或构建流程以进行选择。