我已将产品ID设置为“*”并且AllowSameVersionUpgrades =“是”,因此我可以拥有2个具有一些常用功能的安装程序,但每个安装程序都有1个独特的功能:安装文件的合并模块(文件 - A和文件B,分别在共享位置。
问题是,如果我在安装程序A之后安装Installer-B,则共享位置中的文件A将被删除,并且只复制文件-B。我还在“程序和功能”列表中获得了两个相同的条目。
安装Installer-B时,有没有办法维护共享位置中的所有文件?
答案 0 :(得分:0)
您可能需要稍微澄清一下。目前尚不清楚为什么要提及AllowSameVersionUpgrades,因为您似乎并排安装了两个产品,这使得它无关紧要。您还提到您有一个合并模块,可以在共享位置安装文件,但是如果您安装A然后安装B,则只提及B中的文件。但这是正常的。如您所述,有一个文件,该文件进入相同的位置,因此在同一位置不能有重复的文件。正如你所说,它是共享的,这意味着A和B都将使用它,如果你卸载A或B,它将会留下,因为这是引用计数的工作方式(内部使用共享文件的组件ID)。所以这似乎一切正常,应该不是问题。如果您希望A和B使用自己的文件私有副本,则不要安装到同一共享位置。
在已安装的程序列表中,这是正常的。您没有进行升级 - 您正在安装两个单独的产品,因此您在列表中获得两个条目。只需更改名称即可修复,再次,您不进行升级 - 您正在并排安装两个产品。如果要进行升级,请查看MajorUpgrade元素,UIpgradeCode及相关内容。