2013-10-25 143 views
0

我是WiX的新手,我试图让我的安装项目将某些文件构建到构建输出路径的子目录中。例如,如果我的编译输出路径是:bin \ Debug,我希望某些文件被添加到子文件夹中:bin \ Debug \ Images。Wix - 将文件构建到子目录

请问这可能吗?

回答

1

看起来您正在使用Visual Studio,MSBuild和/或SharpDevelop的WiX项目模板。如果是这样,您有几种选择:

  1. Post Build Event中使用XCOPY
    • 灵活
    • 有些容易在你的项目中找到(该项目的设计师标签之一)
    • 没有整合与构建系统
  2. 的文件夹和文件添加到您的项目文件夹好,将它们包含在您的项目中并在每个文件上设置Copy to Output Directory。注意:您无法在文件夹上设置该属性。复制将保留文件夹结构,但您已在每个要复制的文件上设置属性。
    • 呆板
    • 很容易在你的项目(解决方案资源管理器和属性窗口)
  3. 在文本编辑器中的项目文件,以查找和添加的MSBuild任务,如CopyAfterBuild或其他目标。注意:要使用VS编辑项目文件,请右键单击,选择卸载项目,然后右键单击并选择编辑。
    • 灵活
    • 很难在你的项目(在项目文件XML)找到
    • 使用的编译系统

在最后一种情况下,我有时放在一个REM评论发布构建事件以向用户介绍项目文件已被定制的事实。

+0

非常感谢。我选择了你的选择3,它效果很好。但是,在运行安装程序包时,安装程​​序无法再找到我已经移动的文件来安装它们。我是否需要在移动它们时以某种方式标记它们,或者我错过了某些明显的问题? –

+0

WiX的candle.exe不包含任何不在WiX脚本(或扩展名)中的内容。不过,它确实提供了heat.exe工具来为您生成脚本。作为构建的一部分,[HarvestDirectory](http://wixtoolset.org/documentation/manual/v3/msbuild%5Ctask_reference%5Cheatdirectory.html)任务将运行热量。 –

相关问题