WIX安装程序安装在多个位置然后修补

时间:2012-03-23 22:13:04

标签: installer wix

首先让我说如果对某人没有意义,请告诉我。

这是我的方案......我相信应该可能很简单。假设我的安装程序安装到:

Program Files/MyProduct/Development

此外,我希望将相同的安装程序安装到:

Program Files/MyProduct/Test

这可能与WIX一起使用吗?

另外,如果是这样的话,我怎么去修补它?

3 个答案:

答案 0 :(得分:2)

您尝试将手指放在上面称为多实例安装程序。我在InstallShield中做了很多,而不是WiX和Major / Minor升级,而不是修补。 Yan在WiX方面做得更多,包括撰写一些博客文章。

但要注意,这并不简单。 : - )

Revisited: Multiple Instance installations and patches

答案 1 :(得分:0)

传统上,INSTALLDIRINSTALLLOCATION是一个公共属性,您可以通过命令行或bootstapper进行设置。 E.g:

msiexec /i setup.msi INSTALLDIR="C:\Program Files\MyProduct\Test"

答案 2 :(得分:0)

以下应允许您并排安装,我建议您对此方法非常小心,并且只应将其用于开发目的。

<?xml version="1.0" encoding="UTF-8"?>

<?if $(var.MyApplication.Configuration) = Debug ?>
<?define UpgradeCode = "<INSERT-DEVELOPMENT-GUID-HERE>" ?>
<?else ?>
<?define UpgradeCode = "<INSERT-RELEASE-GUID-HERE>" ?>
<?endif ?>

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Product Id="*"  Name="SetupProject1" Language="1033" Version="1.0.0.0" Manufacturer="SetupProject1" UpgradeCode="$(var.UpgradeCode)">

这种方法使用引用项目的配置,因此要使其工作,您必须引用一个项目(如上所示为MyApplication)。在编译Debug时,这将创建一个带有不同升级代码的安装程序。

然后,您需要以@KMoraz描述的方式进行部署。