Hi Patrick,
Thanks for the reply. You can access the Product and
Upgrade codes using VSI, but not the package code. I
changed the PackageCode using Orca, as well as doing the
below:
* I have given the updated DLL the same Component ID as
the original, but a higher version number
* I have given the update package a higher version number
* I have placed the same UpgradeCode in the Upgrade Table
of the update package using Orca, as the original
* ProductCodes are the same
* I have added the RemoveExistingProducts action in the
InstallExecuteSequence table between InstallValidate and
InstallInitialize.
Reading material on the MS site seems to imply this should
have worked, but I am getting the message:
"Another version of this product is already installed.
Installation of this package cannot continue..." ie. must
uninstall first.
Any ideas?
regards,
Selgin
>-----Original Message-----
>I don't remember VSI exactly, but did you look under the property pages for
[quoted text clipped - 3 lines]
>Patrick Baker - Visual Basic/Deployment Quality Assurance Team
>This posting is provided "AS IS" with no warranties, and confers no rights.
>Hi all,
>
[quoted text clipped - 21 lines]
>Thanks in advance,
>Selgin
Patrick Baker [MSFT] - 21 Jan 2004 22:26 GMT
Hmm. I think you also need to change the ProductCode. It is a bit confusing
but if I remember correctly the upgrade code should remain the same for the
life of your product, and the product code should be unique to each version
of your product. Here is some infro from the MSI SDK:
Every application, or suite of applications, should be assigned an
UpgradeCode Property, ProductVersion Property, and ProductLanguage
Property. The UpgradeCode property indicates a family of related
applications consisting of different versions and different language
versions of the same product.
A major upgrade is a comprehensive update of the product that warrants a
change in the ProductCode property. A major upgrade can be shipped as a
patch package or as a full product installation package. Major upgrades are
available in Microsoft® Windows® Installer version 1.1 and later versions.
Installer version 1.0 does not support updates that change the product
code.
Note that Windows Installer uses only the first three fields of the product
version. See ProductVersion property. If you include a fourth field in your
product version, the installer ignores the fourth field.
The product code is a GUID that is the principal identification of an
application or product. For more information, see the ProductCode property.
If significant changes are made to a product then the product code should
also be changed to reflect this. It is not however a requirement that the
product code be changed if the changes to the product are relatively minor.
A product upgrade that updates a product into an entirely new product must
also change the product code. The 32-bit and 64-bit versions of an
application's package must be assigned different product codes.
The package code is a GUID identifying a particular Microsoft® Windows®
Installer package. The package code associates an .msi file with an
application or product and can also be used for the verification of
sources. The product and package codes are not interchangeable. No two
non-identical .msi files should ever have the same package code. Although
it is common to ship an application that has the same package code and
product code, the two values can diverge as the application is updated. For
more information, see Package Codes.
Hope this goo helps. Sorry it took so long.
Patrick Baker - Visual Basic/Deployment Quality Assurance Team
This posting is provided "AS IS" with no warranties, and confers no rights.
--------------------
>Content-Class: urn:content-classes:message
>From: "Selgin" <anonymous@discussions.microsoft.com>
>Sender: "Selgin" <anonymous@discussions.microsoft.com>
>References: <060201c3d409$a0935470$a401280a@phx.gbl>
<7557SiX1DHA.2900@cpmsftngxa07.phx.gbl>
>Subject: RE: Add-In installation
>Date: Thu, 8 Jan 2004 14:43:22 -0800
[quoted text clipped - 81 lines]
>>Thanks in advance,
>>Selgin