Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Problem patching multiple instances


5 replies to this topic

MarkVanDijk

MarkVanDijk
  • Full Members
  • 4 posts

Posted 25 April 2006 - 13:26

We are having a problem with patching multiple instances of a MSI installation.
What we are doing is first create a transform that alters the ProductCode and the ProductName properties.
After that, the MSI is installed both with and without the transform. To install the transform the following command is used: msiexec /i testInstall.msi TRANSFORMS=transform.mst MSINEWINSTANCE=1
Up until this point, everything is working fine.

However, the problem is with patching. We have created a patch that works on the regular install. When we try to apply it on the second instance, the following command is used: msiexec /p patch.msp /n {<<NEW GUID>>}
This gives the error "The installer cannot install the upgrade patch because the program being upgraded may be missing or the upgrade patch updates a different version of the program. Verify that the program to be upgraded exists on your computer and that you have the correct upgrade patch.".
(Errorcode 1642: ERROR_PATCH_TARGET_NOT_FOUND).
Executing it without the /n {<<NEW GUID>>} gives no problems, but it will ofcourse not update the instance we want.

The commands used come directly from this MSDN link. So it is weird that it is not working for us. Are we doing something wrong? Or is it just not possible?

It should be noted that the patch should not update both instances at once, but the regular installation first, and the second installation when the user is satisfied with the patch.

We are using MSI 3.1 on Windows XP Pro SP2, the installation and the patch are created using InstallShield 11.5 Professional.

Edited by MarkVanDijk, 26 April 2006 - 12:22.


luke_s

luke_s
  • Full Members
  • 532 posts

Posted 26 April 2006 - 02:19

When you write <NEW GUID>, is this the guid created for the transform package?
Have you run with logging to see if that points to anything?

MarkVanDijk

MarkVanDijk
  • Full Members
  • 4 posts

Posted 26 April 2006 - 10:24

The <<NEW GUID>> is the GUID of the new product code, defined in the transform.

MSI also doesn't seem to create a log file when using logging. It does generate one when patching without the GUID, but there are no errors in there.

MarkVanDijk

MarkVanDijk
  • Full Members
  • 4 posts

Posted 27 April 2006 - 14:08

We fixed it.

In the patch options, Validate Build should be set to NO, and the product codes to update should be set to the GUID of the transformed installation and the GUID of the non-transformend installation.


Rabista

Rabista
  • Full Members
  • 1 posts

Posted 04 December 2007 - 08:42

Can you please elaborate on how you did the following "Validate Build should be set to NO" with an example. we are facing exactly the same problem you faced.

Thanks.
Rabista

MarkVanDijk

MarkVanDijk
  • Full Members
  • 4 posts

Posted 04 December 2007 - 15:29

I'm afried not. It's been a while since I worked with installers, and I can't really remember much of the Installshield program.
However, I asume it must be an option somewhere in the settings of the patch. There should be an option Validate Build. It defaults to Yes, but to make it work, it should be set to No.
If it's not there, maybe it's somewhere else in the settings. But it IS a setting, somewhere.