【问题标题】:How to install 3rd party prerequisites on c# msi如何在 c# msi 上安装第 3 方先决条件
【发布时间】:2015-03-26 22:04:14
【问题描述】:

我在 Visual Studio 2008 中创建了一个包含我的项目的 .msi,它需要运行必备的第三方软件,包括 WinZip。我环顾四周,从我所看到的情况来看,有一个先决条件窗口,您可以在其中选择 .NET 框架之类的程序。我还看过编写引导程序来检查机器上是否已安装第三方先决条件,但我遇到了障碍。任何其他建议或有关如何执行此操作的一些建议都会非常有帮助。

谢谢

【问题讨论】:

  • 您使用什么软件来创建 .msi 文件。 Visual Studio 安装项目不是很高级。其他免费和付费软件允许您扩展执行此操作的能力。请注意,您应该避免尝试安装 WinZip 的内部副本,您应该简单地检查它是否已安装,如果它没有告诉使用它是必需的。此外,您不需要 WinZip 来创建存档。
  • 感谢您的回复。我一直在从 Visual Studio 创建 .msi。请您详细说明如何在安装主项目之前检查先决条件是否已安装。

标签: c# windows-installer bootstrapper party


【解决方案1】:

正如 Ramhound 在他的评论中所建议的,请查看商业产品以编写您的安装程序。有几个,包括我个人最喜欢的Advanced Installer,提供了可以满足您最初需求的免费工具版本。

根据先决条件的打包方式(MSI 或 EXE),如果不使用自定义操作或引导程序,您的 MSI 可能无法直接安装 prereq,该引导程序将在目标系统中搜索 prereq 并在它出现时安装它目标系统上不存在。

顺便说一句,我与 Advanced Installer 没有任何关系,除了我已经成为付费客户几年了。除了可靠的产品外,他们的服务也非常出色。

【讨论】:

    【解决方案2】:

    您可以使用 ClickOnce 引导程序。有关如何使用它来安装 .net 框架的示例,请参阅this page

    引导程序包安装在C:\Program Files\Microsoft SDKs\Windows\v6.0A\Bootstrapper\ 或更新的位置。您可以添加自己的包。为了帮助您创建一个,请使用Bootstrapper Manifest Generator

    结果是一个 setup.exe,它首先检查是否安装了先决条件,如果没有安装它。然后你的 .msi 将被执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多