我有一些组件MSI软件包,需要一起安装才能形成最终应用程序。
问题是:组成软件包的组件可以被更新,并且该组件可以在http文件服务器上重新启动。我应该采取什么方法?
我正在编写的安装程序是“主”安装程序。为了仅在该组件上执行升级,哪个组件必须能够读取其客户端计算机上安装的每个组件的版本。
同样,如果是首次安装该应用程序,则安装程序将下载并安装所有必需的组件。
我正在使用Installshield 2009。
我研究了链接的MSI,但主安装程序为空。因为它需要尽可能轻巧。
我不知道如何编写 bootstrap ,我的公司更喜欢使用installshield来编写安装程序。
我已经研究过-显然前提条件并非要被卸载。
我相信我可以通过更改版本号进行较小的更新,从而允许下载内容仅下载所需的组件,而不下载整个安装程序-目前,我正在实现您建议的方式(sascha),我的公司将使用通过InstallShield提供的FLEXnet连接服务。我提到的“组件”(我们的开发人员喜欢使用的术语)在概念上与InstallShield的组件概念相似。但是,我已经修改了“组件”以使用功能进行封装,以便在构建发行版时可以选择将每个“功能”包装在cab文件中。
这听起来很困惑-甚至对我来说。
我诉诸功能<组件(包括服务)
我公司拒绝让我使用除Installshield之外的任何其他安装程序。我的猜测是,为了在不久的将来更新先决条件,需要编写新的安装程序,然后将应用程序作为主要升级版本重新发布。这对我来说很有意义。
Perermtate,我认为没有一种方法可以卸载预先安装的先决条件,因为在所有“先决条件”都应作为该应用程序的第三方组件之后,因为该先决条件可能需要作为其他应用程序的平台,因此该方法是有意义的。
感谢您的所有回复!
最佳答案
我研究过类似的问题,并且我很同情,因为我不知道有简单的答案。如果我理解正确,那么您基本上需要一个setup.exe,它将检测目标系统上必备组件的当前版本,如果缺少这些组件,则进行安装,如果它们过时,则对其进行升级。
我过去使用过的几个选项是:
更新:我写这篇文章(2009年8月)时尚未准备好,但是Wix项目正在开发它自己的名为Burn的 bootstrap /向导,对于我们中那些热爱Wix的人来说,这是非常有前途的。
关于windows-installer - 链接的msi/Bootstrapper/先决条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/294961/