2011-12-08 59 views
2

我在Visual Studio 2008中创建了一个包含我的项目的.msi文件,它需要运行包括WinZip的必备软件。我已经看了一遍,从我所看到的,有一个先决条件窗口,您可以选择.NET框架等程序。我也看过写一个引导程序来检查第三方的先决条件是否已经安装在机器上,但我碰到了一堵砖墙。有关如何做到这一点的任何其他建议或建议将非常有帮助。如何在c#msi上安装第三方软件的先决条件

感谢

+2

您使用什么软件来创建.msi文件。 Visual Studio安装项目不是很先进。其他免费和付费软件可让您扩展自己的能力。请注意,您应该避免尝试安装WinZip的内部副本,您应该简单地检查一下,看看它是否已安装,以及是否不告诉使用它的必需。除此之外,您不需要WinZip来创建档案。 –

+0

感谢您的回复。我一直在从Visual Studio创建.msi。请你可以扩展如何检查在安装主项目之前是否安装了先决条件。 – user1087943

回答

4

由于Ramhound在他的评论中建议,看看在商业产品创作您的安装程序。包括我个人最喜欢的Advanced Installer在内的几个版本提供了可以满足您最初需求的免费版本的工具。

根据打包的先决条件的方式(MSI或EXE),MSI可能无法直接安装prereq,而无需使用自定义操作或引导程序来搜索目标系统的prereq并安装它它不存在于目标系统上。除此之外,我与Advanced Installer没有任何联系,除了我几年前一直是付费客户的事实外。除了坚实的产品之外,他们的服务也非常出色。

0

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

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

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

相关问题