0

我知道您可以升级版本,删除旧安装并安装新版本。
而且我知道您还可以支持在同一台机器上安装两个相同的软件。

有没有办法创建一个 GUI 安装,让用户选择是否要升级或保留旧版本并安装新实例以及旧实例?

4

1 回答 1

3

是的,但这并不简单。

基本上,您从两个升级表条目开始。一种是假的并且永远不会检测到产品,另一种是检测到您以前的版本但具有 DetectOnly 属性集。

接下来,您需要创建一个自定义对话框,其中包含一个单选按钮(安装新的、升级现有的)和一个包含先前检测到的产品条目的列表框。您将使用自定义操作来使用临时行填充 ListBox 表,以反映之前要升级的合格产品。

如果用户选择安装新的,你就继续。如果他们选择现有的升级,您从“仅检测”升级操作属性中解析出产品代码,并将它们放入“假”操作属性中。现在删除现有产品将有一些东西要删除。

它们是您想要提出和执行的各种业务规则,涵盖了静默安装故事,并且还有一种改变 INSTALLDIR 的方法,因此产品可以并排放置。

这是基本模式,但你必须想出它周围的所有细节。我已经这样做了几次,结果非常好。

于 2013-10-18T11:46:24.077 回答