如何下载EULA并在运行时在WiX安装程序中显示它?

如何下载EULA并在运行时在WiX安装程序中显示它?,wix,windows-installer,Wix,Windows Installer,我有一个WiX安装程序项目。根据要求,我必须在运行时从web服务器下载EULA,并在安装时显示它。我们如何才能做到这一点? 我尝试使用自定义动作,但没有运气 大约11年前,我写了一篇博客文章描述了这一点: 基本上,MSI具有此处讨论的临时数据的概念 我还没有测试过这个,但似乎更新不支持临时的,但插入到 其概念是构建MSI并将模板RTF放置在ScrollableText控件中。定义控件条件,以便在设置属性时控件不可见 然后,在WelcomeDlg之前计划的自定义操作中,从web服务下载替换RT

我有一个WiX安装程序项目。根据要求,我必须在运行时从web服务器下载EULA,并在安装时显示它。我们如何才能做到这一点?

我尝试使用自定义动作,但没有运气

大约11年前,我写了一篇博客文章描述了这一点:

基本上,MSI具有此处讨论的临时数据的概念

我还没有测试过这个,但似乎更新不支持临时的,但插入到

其概念是构建MSI并将模板RTF放置在ScrollableText控件中。定义控件条件,以便在设置属性时控件不可见

然后,在WelcomeDlg之前计划的自定义操作中,从web服务下载替换RTF,并在对话框上使用替换RTF和condtrol条件动态定义一个控件,以便在设置属性时该控件可见。最后,将属性设置为用另一个控件覆盖一个控件

但老实说。。。我不确定我是否会费心这么做。首先,有几种方法可以使用超链接从安装程序中删除EULA和/或从安装程序中删除EULA,并让应用程序在第一次运行时像建议的那样显示它

最后,还有一些考虑因素,例如静默安装和脱机安装,它们会引起此设计的其他问题


也就是说。。。如果你真的想这么做。。。这就是它的工作方式。

您可以在启动时更改应用程序以执行此操作吗?是否可能包含指向包含最新版本的URL的链接?(为了避免由于防火墙问题而导致下载失败)我喜欢让应用程序显示EULA,但我忘了提到您可能需要一个“始终在顶部”对话框,或者一些更好的方法来确保用户真正正确可靠地看到EULA,而不会对他们进行太多的监听(仅对每个用户显示一次,并且没有令人困惑的复选框和选项)。一个典型的灾难是在接受EULA之前无法使用的应用程序,并且EULA有时会出现在主窗口下方。支持人员为此付出了巨大的努力。