Currently I can do a major upgrade of a specific instance. There are a
couple problems though.
1. The default instance is upgraded fine. The transforms are upgraded,
BUT the previous version is not removed. So they both show up in ARP.
2. I need to be able to not downgrade a specific instance, but be able
to install an old version as a different instance.
I am currently giving each instance it's own upgrade code and then
scheduling the FindRelatedProducts action after the upgrade codes are set.
Here is the current code:
<Product Id="YOURGUID-7AF1-4854-9B4F-01A6C77CC4AB"
Name="InstanceTransforms"
Language="1033"
Version="8.1.0.0"
Manufacturer="DCT"
UpgradeCode="{YOURGUID-F8CA-4F91-B74D-DF92AE4AB8FF}">
...
<MajorUpgrade AllowDowngrades="no" DowngradeErrorMessage="A new
version of [ProductName] is already installed. Exiting installation."
Schedule="afterInstallFinalize" />
<Property Id="INSTANCEID" Value="Default Instance" Secure="yes" />
<InstanceTransforms Property="INSTANCEID">
<Instance Id="Instance_1"
ProductCode="YOURGUID-975B-4CBA-B2CC-B363CAA4312C"
ProductName="InstanceTransforms"/>
<Instance Id="Instance_2"
ProductCode="YOURGUID-CB52-485A-BE2A-1B2A407CD878"
ProductName="InstanceTransforms"/>
</InstanceTransforms>
<CustomAction Id="SetUpgradeCode_1" Property="UpgradeCode"
Value="{YOURGUID-975B-4CBA-B2CC-B363CAA4312C}" />
<CustomAction Id="SetUpgradeCode_2" Property="UpgradeCode"
Value="{YOURGUID-CB52-485A-BE2A-1B2A407CD878}" />
...
<InstallUISequence>
<Custom Action="SetUpgradeCode_1" Before="AppSearch" >INSTANCEID
= "Instance_1"</Custom>
<Custom Action="SetUpgradeCode_2" Before="AppSearch" >INSTANCEID
= "Instance_2"</Custom>
<FindRelatedProducts After ="SetUpgradeCode_2"/> <!--Do
FindRelatedProducts after the last upgradecode CA runs.-->
</InstallUISequence>
<InstallExecuteSequence>
<Custom Action="SetUpgradeCode_1" Before="AppSearch" >INSTANCEID
= "Instance_1"</Custom>
<Custom Action="SetUpgradeCode_2" Before="AppSearch" >INSTANCEID
= "Instance_2"</Custom>
<FindRelatedProducts After="SetUpgradeCode_2"/>
</InstallExecuteSequence>
...
</Product>
--
Tyler Walters - Duck Creek Technologies
------------------------------------------------------------------------------
Benefiting from Server Virtualization: Beyond Initial Workload
Consolidation -- Increasing the use of server virtualization is a top
priority.Virtualization can reduce costs, simplify management, and improve
application availability and disaster protection. Learn more about boosting
the value of server virtualization. http://p.sf.net/sfu/vmware-sfdev2dev
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users