'Duplicate symbol 'WixAction:InstallExecuteSequence/RemoveExistingProducts' found. This typically means that an Id is duplicated

I am developing an installer project using WiX 3.9 toolset. I am trying to uninstall the previous version during the install of a new version. I tried the below one in product.wxs,

<Product Id="*" Name="WIXDemoApp" Language="1033" Version="1.0.0.0" Manufacturer="Man name" UpgradeCode="993d89e6-07ec-4d33-abc5-957360bc66e1">
    <Property Id="PREVIOUSVERSIONSINSTALLED" Secure="yes" />
    <Upgrade Id="89CF8BE7-05EE-4C7E-9EFC-0249DD260EBB">
        <UpgradeVersion
           Minimum="1.0.0.0" Maximum="99.0.0.0"
           Property="PREVIOUSVERSIONSINSTALLED"
           IncludeMinimum="yes" IncludeMaximum="no" />
    </Upgrade>

    <Upgrade Id="89CF8BE7-05EE-4C7E-9EFC-0041DD260EBB">
        <UpgradeVersion
          Minimum="1.0.0.0" Maximum="99.0.0.0"
          Property="PREVIOUSVERSIONSINSTALLED"
          IncludeMinimum="yes" IncludeMaximum="no" />
    </Upgrade>

    <InstallExecuteSequence>
        <RemoveExistingProducts Before="InstallFinalize" />
    </InstallExecuteSequence>
</Product>

I am getting this error:

error LGHT0091: Duplicate symbol 'WixAction:InstallExecuteSequence/RemoveExistingProducts' found. This typically means that an Id is duplicated. Check to make sure all your identifiers of a given type (File, Component, Feature) are unique.`

What was the problem and how do I fix it?



Solution 1:[1]

The most likely problem is, like the error stated, you have a "Duplicate Symbol"


I noticed-- two Properties are labeled PREVIOUSVERSIONSINSTALLED, and another one has an ID also labeled PREVIOUSVERSIONSINSTALLED


WiX could be confusing the two of your Upgrade IDs, seeing as the only difference between them are the numbers 0249 and 0041


Beyond those, your code shouldn't have any problems-- Then again, you didn't provide all of your code, so there is possibly one or more duplicates, like the error said.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Momoro