Error 2749 while patching
Posted 02 July 2007 - 16:18
I tested by installing version 3.1.1. Then I installed the patch by using:
msiexec /p C:\Patch.msp /qb! REINSTALL=ALL REINSTALLMODE=omus /l C:\Install.log
The first time I do this, I get the error message 2749. It indicates that the installer cannot patch because it was expecting version 3.0 to be installed. Instead it found version 3.1.1.
Next I run the installed program and I get a Windows installer progress window. Nothing happens and version 3.1.1 of the program runs.
Finally I apply the patch a second time, it is fine. I run the program and version 3.1.2 runs as it should.
This behavior would be very convoluted for my users. They would have to apply the upgrade. Restart the program, and then apply the upgrade again.
Why does Windows Installer expect that version 3.0 is installed the first time that I apply the patch?
Posted 02 July 2007 - 16:40
The error is still 2749, but this time Windows Installer is expecting version 3.1.1 to be installed, instead it found version 3.1.2.
So it's almost like no matter what, Windows Installer is trying to apply both transforms (3.0->3.1.2 and 3.1.1->3.1.2).
I placed both .msi references in the TargetImages table pointing to the same Upgraded row in the UpgradedImages table. That's right isn't it?
Posted 02 July 2007 - 19:11
Applying the patch still does not work the first time. There is no error 2749. I have to run the program once, then apply the patch again.
Posted 03 July 2007 - 07:53
- The kind of patches (Small or Minor)
- Version of patches (2.0 or 3.0)
- If 3.0, content of the MsiPatchSequenceTable
- If 3.0, why did you using the 2.0 command line to apply patches
- How are the patches created?
There's a whitepaper describing patch sequencing with MSI 3.0.
Inside Windows Installer 4.5
Posted 03 July 2007 - 13:29
I'm using version 2.0 with Visual Studio Installer as the msi authoring tool and msimsp as the patch creation tool.
Everything is working but with a new problem which needs a new thread.