将MSI作为安装的一部分复制到目录中

时间:2013-06-18 14:14:34

标签: wix windows-installer

我正在使用最新版本的WiX来构建我的安装程序项目,并需要解决我的问题......

当我安装 ProductA.msi 时,我希望 ProductA.msi 将自身复制到目录中,将其命名为%PROGRAMFILES%\ ProductA \ Installer - 以便我使用的安装程序可以在%PROGRAMFILES%\ ProductA \ Installer \ ProductA.msi

重复使用

有人知道这是否可行?

2 个答案:

答案 0 :(得分:1)

我不确定你喜欢做什么是好的。

BUT: 您可以使用robocopy编写.bat文件,将msi及其文件复制到目标,然后启动.msi。

答案 1 :(得分:0)

我需要做同样的事情并最终在PowerShell脚本中作为自定义操作抛出。 WiX具有[OriginalDatabase]属性,该属性指向正在运行的.msi。我只是把它作为一个参数传递给一个快速的脚本,它可以工作。

param(
[string]$MsiLocation
)

echo "Creating directory"
md -Force "C:\directory"

echo "Removing current files"
rm "C:\directory\*"

echo "Copying in new .msi"
cp "$MsiLocation" "C:\directory\"

它不优雅,但它完成了工作。您可以查看this answer了解详情。