我正在使用WIX为Application Suite开发安装程序,结构是 如下:
应用程序核心
     | _ _ Flavor1
     | _ _ Flavor2
     | _ _ Flavor3

Application Core是像Visual Studio这样的产品,Flavors 1,2,3是它下面的子产品。

这是我的问题,
  - 在添加删除程序中应该有4个条目用于Application Core,Flavor1,Flavor2和Flavor3。点击   - 我应该可以重新启动添加/删除Flavor1,Flavor2和Flavor3的安装程序。

有帮助吗?

解决方案

更新:请注意,虽然Office 出现以安装单独的功能,而不是单独的产品 - 但它实际上安装了许多不在ARP中显示的单独产品。添加单独的ARP条目以启动引导程序安装程序,然后维护添加,删除和更新您在ARP中看不到的现有产品。

这些应该是功能,而不是单独的产品。以Microsoft Office套件为例,如果您安装套件,那么您在添加/删除程序中只有一个条目,而Word,Excel,Powerpoint等都只是Microsoft Office之外的“功能”,您可以通过这种方式更新它们。

但是,您可以使用自己的安装程序单独购买这些应用程序中的一些,在这些情况下,可以使用“应用程序核心”。正如您所说,它包含在每个安装程序中,使用共享组件,因此文件不需要安装两次,每个应用程序可以彼此独立地安装/卸载。

以下是有关的Windows Installer文档的一些摘录。组件和功能(您可能还想阅读将应用程序组织到组件中

  

两个共享相同的组件   组件ID被视为多个   同一组件的实例   不管他们的实际内容如何。   只有一个实例   组件安装在用户的   电脑。几个功能或   因此,申请可能会分享一些   组件。

其他提示

通常这是通过安装一个产品来完成的,因此您可以修改(添加/删除程序)中的一个条目(选择产品,单击修改按钮)。然后,您将转到功能树,您可以在其中添加或删除功能。

如果单独的条目是硬性要求,则应创建多个MSI。但是你可以卸载“Application Core”。在你的例子中,保持其他安装,从而导致Flavors

的问题

这听起来像你想要的功能,所以Sander得到我的+1。

但有时您可能需要同一产品的不同安装,例如安装在同一服务器上的培训和测试版本。在这些情况下,您需要找到一种不同的方法,这是我提出的(见答案创建Live,...... )。记下有关为每个文件创建组件和通配guid的编辑,因为这简化了过程,即不需要BeforeBuild / AfterBuild技巧。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top