2K SP4 version of MSI Installer (2.0.2600.1183) breaking major upgrades

M

mmcbride

Hello, we recently had a customer bring a big problem to our attention.
They were trying to install a newer version of our product on top of an
older version. This is a major upgrade with the RemoveExistingProducts
action placed in between InstallValidate and InstallInitialize (MSI Help
file says "In this case, the installer removes the old applications entirely
before installing the new applications."). But after the upgrade, 2 files
were not installed which was triggering a self repair. When I reproduced
the problem and logged the install I found for the 2 components that
installed those files: "Disallowing installation of component: {GUID}since
the same component with higher versioned keyfile exists." Then it removed
the old version of the product and installed the new version without
installing those 2 files. This was happening on my test machine with
Windows 2000 SP4 msiexec.exe version 2.0.2600.1183.

Well, one thing I don't understand is that the installer said that a higher
versioned file already existed. That is not true. The newer version of the
product has the same version number for each of the 2 files.

(The other thing I am not real happy about is that it was trying to check at
all. I understand that the placement of RemoveExistingProducts is after
InstallValidate and so it makes sense that it would check, but I think the
Windows Installer documentation is misleading. Perhaps there is a different
location in the sequence where I could place RemoveExistingProducts so that
it finds and removes the old product being doing any checking for the
install of the new product?)

Anyway, to get to the real point of this post, after much research and trial
and error I found that if I downgrade msiexec.exe on that same test machine
to version 2.0.2600.2 the upgrade works correctly and those 2 files are
installed.

Does anyone know what is going on? Why would the newer version of the
Windows Installer engine break the upgrade?

Thanks for any help!!
Merri McBride
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top