2

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

当我安装ProductA.msi时,我希望ProductA.msi将自身复制到一个目录中,将其命名为%PROGRAMFILES%\ProductA\Installer - 这样我使用的安装程序就可以在%PROGRAMFILES%\ProductA\Installer\重复使用产品A.msi

有谁知道这是否可能?

4

2 回答 2

1

我不确定你喜欢做什么。

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

于 2013-06-19T09:09:48.733 回答
0

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

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\"

它并不优雅,但可以完成工作。您可以查看此答案以获取更多详细信息。

于 2015-06-24T17:42:07.307 回答