关于Visual Studio:用于引导程序和无缝更新的WiX安装程序设计选项

WiX installer design options for bootstrapper and seamless updating

我有一个应用程序,该应用程序在首次安装时需要启动程序,您可以在其中选择已安装应用程序的语言,如果尚未安装.net框架,则还需要安装该框架以及其他一些先决条件。

  • 我已经看过WiX的使用方法:使用引导程序安装.NET Framework
    但我看不到如何将其用于其他自定义先决条件。
    什么是最好的引导程序?

  • 安装应用程序后,我们会在应用程序启动时进行更新检查。如果存在新版本,则需要下载并升级软件。
    这不会是无声的升级,因为同时EULA和其他一些内容可能会更改,因此我们仍然需要GUI来进行更新程序msi中的那些检查。因此,我正在考虑如何执行此操作的不同选项。
    我的第一个想法是要有2个单独的安装程序。
    第一个将带有引导程序和完整的GUI,另一个将带有最少的GUI用于更新。
    有更好的选择吗?

  • 我还希望对上的更新安装程序的访问仅限于实际安装了软件的用户。
    我不太确定执行此操作的最佳方法。

  • 我对WiX升级过程本身以及升级代码等都很熟悉,所以这不是问题。
    我只是在寻找一种以尽可能最佳的方式来设计所有这一切的方法。

    任何想法都值得赞赏。我正在使用Visual Studio 2008中的WiX 3.0.5419.0。


    I've taken a look at the WiX How To:
    Install the .NET Framework Using a
    Bootstrapper but I don't see how to
    use this for other custom
    prerequisites.

    您可以使用相同的技术(即msbuild GenerateBootStrapper任务)来安装自定义先决条件,但是您必须编写自己的bootstrapper程序包。

    一种执行此操作的方法是研究C:\\Program Files\\Microsoft Visual Studio 8\\SDK\\v2.0\\BootStrapper\\Packages\\中的现有引导程序包(或Windows SDK中的引导程序包),并阅读Bootstrapper清单XML格式的文档。引导程序生成器工具也可能会有所帮助。

    关于自动更新应用程序:wix不支持。我相信曾经有过计划以clickthrough的名义添加此功能,但我认为这些计划还没有成熟。如果他们这样做,我将找不到有关它的任何文档。