Wix Burn 松散文件安装

Wix Burn Loose File Install

使用 Wix 3.10.2 复制许可文件?我们有一个要求,在将 Web 应用程序安装到 IIS 后,我们需要复制一些许可证文件。许可证文件的复制将是序列中的最后一个。许可证文件将位于刻录(引导程序)旁边 setup.exe。这样我们就可以根据用户来控制需要安装什么许可文件。我想了解与 .exe 一起驻留的许可证文件数量是否会出现问题?是否有自定义操作来选择不属于 msi 或 exe 的文件?

1) 与 exe 一起驻留的许可证文件数量不会有问题

2) 使用不带文件柜名称的媒体元素,您可以指定某些文件既不会在 cab 内,也不会嵌入到 msi 中,无需自定义操作。参见 http://wixtoolset.org/documentation/manual/v3/xsd/wix/media.html

您可能需要更准确地确定复制发生的确切时间。您最初的问题是 "after the installation",这意味着安装已完成并且您生成的 MSI 不再是 运行。但在稍后的评论中你说 "during the install"。

如果安装后是您想要的,那么您可以将自定义可执行文件添加到您的 Burn 包中,它将执行您想要的任何操作。在许多此类情况下,需要文件的应用程序只是在 MSI 的帮助下获取它,说明它是从哪里安装的,或者使用 Windows 安装程序的 SourceList 功能来获取位置。

如果您想在安装过程中复制文件,那么 CopyFile 元素可能就是您所需要的。它具有定义要复制的文件的通配符功能。您的源位置将是 SourceDir 属性,目标将是您定义的目录之一。请注意,卸载产品时不会卸载这些文件。

WiX 复制文件:

http://wixtoolset.org/documentation/manual/v3/xsd/wix/copyfile.html

我不得不使用 Visual Studio SDK 附带的原生 bootstrap。使用 bootstrap 您还可以创建先决条件,例如安装 .net。这符合我的要求。还有一个 msbuild 任务,以便您可以将其自动化。使用安装项目创建 msi 和 VS bootstrap 创建 setup.exe