I apologize ahead of time for this ancient usage example, but this is legacy
code I am afraid to change ;-)

Note that ProductVersion is defined by me and is something like "1.0.0.99" -
and I know MSI disregards the last level of this version info.  Also note
that this MSI is installed "Per Machine".

Suppose I have this kind of thing going on:

    <Upgrade Id="$(var.UpgradeCode)">
      <UpgradeVersion Minimum="$(var.ProductVersion)"
                      IncludeMinimum="no"
                      Property="NEWERPRODUCTFOUND" />
      <UpgradeVersion Minimum="0.1.0"
                      IncludeMinimum="yes"
                      Maximum="$(var.ProductVersion)"
                      IncludeMaximum="no"
                      Property="UPGRADEFOUND" />
      <UpgradeVersion Minimum="$(var.ProductVersion)"
                      IncludeMinimum="yes"
                      Maximum="$(var.ProductVersion)"
                      IncludeMaximum="yes"
                      Property="SAME_VERSION" />
    </Upgrade>

After this runs, I have a CA that does some things, and it "reads" the
"UPGRADEFOUND" property.  On occasion, I see two product codes in there when
there is (I think) just one product to upgrade.  These multiple product
codes are separated by a semi-colon.

Note that my MSI has one UpgradeCode which never changes, and 4 ProductCodes
that do change each time the thing is built.  There is one product code
generated for each language transform that is embedded in it, and I know
that I could restrict what is returned in UPGRADEFOUND by specifying the
"Language=" element for UpgradeVersion element, but I have not done that
yet.

So I'm wondering how to properly handle this condition.  

I think I could see more than 1 product codes in UPGRADEFOUND if the (same
or different) user installed the product in different languages.  Like 2
guys using the same computer, one in English, and one in French?

If I put Language elements in the Upgrade element, this would limit what is
returned, but how do I prevent users from installing the same version number
twice on the same machine when they have different product codes (but same
upgrade code)?

Under what conditions would there be multiple product codes in that
UPGRADEFOUND variable?  
Is there any order to the appearance of the product codes returned in the
UPGRADEFOUND variable?

Thanks in advance.
GAP



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/multiple-product-codes-returned-from-Upgrade-code-tp7598400.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=164703151&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to