WiX设置:添加对Visual Studio项目输出问题的引用

时间:2012-08-10 09:06:55

标签: visual-studio-2010 wix wix3.6

我正在尝试学习WiX,现在正在使用Visual Studio的WiX安装项目模板创建示例安装项目。

我有一个包含三个项目的解决方案:

  • .net类库;
  • .net应用程序,它使用类库;
  • WiX安装项目。

当然,我想将前两个项目的输出添加为WiX设置的组件。

如上所述herehere(据我所知),在WiX项目中添加引用并将其Harvest属性设置为True会自动添加项目输出的组件。

现在,我想在一些Feature描述中引用此组件。

问题:

  • 我应该使用Id的{​​{1}}?
  • 这是引用VS项目输出的正确方法吗?

我正在使用VS 2010和WiX 3.6 RC。

2 个答案:

答案 0 :(得分:13)

目前收获引用的项目输出在Wix3.6中不起作用,并且将是added in Wix4.0

现在你必须自己手动将二进制输出添加到你的项目中(我个人更喜欢)。对于下面的示例,组件的名称与其子文件元素(dotNetClass.Output和dotNetApp.Output)的名称相同。

<Component>
    <File Id="dotNetClass.Output"
          Name="$(var.dotNetClass.TargetFileName)"
          Source="$(var.dotNetClass.TargetPath)"
          KeyPath="yes" />
</Component>

<Component>
    <File Id="dotNetApp.Output"
          Name="$(var.dotNetApp.TargetFileName)"
          Source="$(var.dotNetApp.TargetPath)"
          KeyPath="yes" />
</Component>

答案 1 :(得分:2)

作为替代方案,您可以使用HarvestProjectHeatDirectoryHarvestDirectory MsBuild任务:

将这些内容嵌入到* .wixproj文件中,或者您可以创建单独的MSBuild兼容项目文件。