2016-03-08 69 views
1

我有一个托管的wix引导程序,我注意到我可以提供更新版本的升级检测引导程序的URL。但是,似乎只有在以前安装了我的引导程序的情况下才会运行。在安装当前版本之前,是否有任何默认烧录方式来检测引导程序的较新版本?我想要的是,如果客户拥有传统引导程序的副本并运行它来安装新机器,则用户可以选择下载新引导程序并运行它。我认为我可以在定制引导程序中从头开始编写所有这些代码,但希望确保我没有重新发明轮子。似乎可以肯定的是,大多数情况下已经实施了更新检测。检测Wix引导程序的较新版本

回答

0

经过进一步的测试和调查,看起来我对这是如何工作不正确的。 detectupdateBegin事件即使在之前还没有安装bundle时也会被调用。您可以允许Wix使用应用程序联合格式来使用原子提要。如果您使用这种格式,那么引擎将返回Feed中的最新版本。否则,您必须推出自己的更新服务,并将调用放入detectupdateBegin事件处理程序中。请确保不要将结果设置为“OK”,否则引擎将查看您的服务URL并尝试像处理应用程序联合供稿一样处理它并返回错误。

您检测到更新后,您需要调用Engine.SetUpdate,然后使用UpdateReplace的InstallAction调用Plan。

0

您可以随时检查产品版本的注册码并将其与最新版本进行比较。