使用 WIX 安装自我更新应用程序?

问题描述 投票:0回答:3

我正在编写一个应用程序,需要安装在大量桌面上,并且还需要自我更新。我们正在寻找 WIX 来创建安装。我使用过 ClickOnce,对于此安装来说它不是一个好的解决方案。 WIX似乎适合,但我没有找到好的自动更新流程。

我看过ClickThrough,但它似乎还没有准备好迎接黄金时段。有没有人有另一个好的解决方案与 WIX(或者可能是另一个安装程序)一起使用来自动更新应用程序安装?

.net installation wix bootstrapping
3个回答
10
投票

2023 年 8 月 18 日更新:

ClickThrough 不再是 WiX 工具集的一部分。它的功能已集成到 Burn 引擎中可用的更新源功能中,但此答案的其余部分在 WiX 工具集中不再相关。

原评论:

是的,ClickThrough 确实就是您在这里寻找的。其中有一些有用的东西。您也许可以剖析代码并自己使用它,而无需所有额外的“UI + 构建集成”。大多数错误都位于较高级别。从根本上来说,RSS 更新和可执行引导程序工作正常。


7
投票

它必须有多“自动”更新? :-)

我们将 WiX (2.0) 用于需要反复安装的应用程序。只要您从一个版本到另一个版本进行“重大升级”,就可以正常工作 - 您可以卸载旧版本,然后重新安装新版本 - 这里没有重大问题。

关键是要有一个稳定的、永不改变的“UpgradeCode”(WiX 中的 GUID)——它是你的应用程序的关键——并且为每个版本都有一个新的 ProductCode。

然后,在您的 wxs 文件中,您需要两位:

<Upgrade Id='--your-updatecode-GUID-here--'>
    <UpgradeVersion MigrateFeatures='yes' RemoveFeatures='ALL' />
</Upgrade>

<InstallExecuteSequence>
  <RemoveExistingProducts After='InstallInitialize' />
</InstallExecuteSequence>

应该可以了!

除此之外 - 没什么可说的 - 它只是有效:-)


4
投票

Windows Installer 并不是真正为“自我更新”软件设计的。如果您不需要 MSI,或者确实需要应用程序“拉取”它自己的更新,则使用 NSIS 或其他一些工具并编写您自己的更新例程/服务。

但是,如果将其安装在单个组织内的大量桌面上,那么更好的解决方案是通过 Active Directory 部署 MSI。然后,您可以使用组策略“推送”更新。这将比任何自我更新的应用程序都要强大得多。

© www.soinside.com 2019 - 2024. All rights reserved.