【发布时间】:2018-05-25 03:17:03
【问题描述】:
拥有一个由用户手动运行的 msi 文件。在大多数情况下,他们需要能够选择安装目录,但是我们需要禁止某些安装位置。例如。将其安装到根目录C:\ 会导致各种问题,因此我们需要覆盖该决定(即用C:\Program Files (x86)\xxx 覆盖C:\)或弹出错误。有什么办法可以强制执行吗?
有问题的 msi 已经有自定义操作,但似乎没有办法从那里编辑安装位置。
或者,在这种情况下,msi 被封装在一个 WiX 包中,所以如果我们可以从那里禁止某些目录,那也很好。不过也找不到方法(只知道如何使用<Variable Name="InstallFolder" ...> 编辑默认值)
只有我能想到的其他解决方案会相当可怕:制作一个单独的应用程序,选择一个目录,然后使用可接受的目录运行安装程序。
这可以通过 msi 或 WiX Bundle 完成吗?
我正在使用“Visual Studio 2013 安装程序项目”扩展来构建 msi。
【问题讨论】:
标签: c# wix windows-installer custom-action