Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Major Update Patching and Windows Installer 3.0

559 views
Skip to first unread message

Klaus Leinad

unread,
Jan 26, 2005, 7:31:28 AM1/26/05
to
Hi!

When using Windows Installer 2.0, I used to create major patches the
same way as the creation of small patches is described in the
documentation ("A Small Update Patching Example").

Now that I switched to Windows Installer 3.0, msimsp returns the
following error code when creating a major patch:

"ERROR: Since MSI 3.0 will block installation of major upgrade patches
with sequencing information, creation of such patches is blocked."

I have already tried to suppress the generation of sequencing
information by adding

SEQUENCE_DATA_GENERATION_DISABLED = 1

to the 'properties'-table of the pcp-file, but it did not change anything.

The msi-files I use are created using the setup-projects of Visual
Studio.Net. Minor and small patches still work, but they are not
flexible enough. (We need to remove features, etc.)

Does anybody know what I have to do to create the major patches?

Any help would be appreciated,
Greetings,
Klaus

Jason Swager

unread,
Jan 26, 2005, 11:05:11 AM1/26/05
to
The company I work for just recently opened - and closed - an incident with
Microsoft tech support on the issues of major upgrades via patches.
Although our problem was different than you describe, two things came out of
the investigation:

1) Major upgrades via patches are somewhat risky in MSI 2.0 - try not to use
them if possible.
2) Major upgrades via patches in MSI 3.0 will not be allowed. This was by
design. And no - there is no docs anywhere (yet) that mention this.

We've been using major upgrades via patches in MSI 2 - also so we can take
advantage of the remove feature/remove component abilities. We have to go
through a lot of extra work to make it work properly, but it does work.
During the investigation of the incident, I asked Microsoft if they will
support the major upgrades via patches in MSI 3.0 - the response was no,
they were not. Not exactly great for us; we're moving to MSI 3.0 support in
a few months.

To resolve this, we're going to have to change our major upgrades into minor
upgrades. This will put some pressure on the development group to make sure
that we don't make component removal or feature removal changes during the
life of a particular version of our product.

Although you can no longer do major upgrades via patches, you can still do
major upgrades using the MSI package and associated files. Since our MSI
package and files are about 500M, this really isn't an option for us. Hence
the move to minor upgrade patches.

Jason Swager

"Klaus Leinad" <do...@spam.me> wrote in message
news:OjU43K6A...@tk2msftngp13.phx.gbl...

Klaus Leinad

unread,
Jan 27, 2005, 3:13:19 AM1/27/05
to
Thanks a lot, Jason! That makes some things clear to me. Astounding (if
not to say VERY annoying) that Microsoft didn't care to mention that in
the documentation ...

As minor updates are out of question in our case, we will have to stick
with major updates using full msi-installers. One thing I have to try,
though, is to use simple binary patches using a tool like 'mpatch.exe'.
These could be used to patch at least between to versions of the msi's.
This won't be as efficient as msp-patches (definitely much bigger) and
by far not as flexible, but I guess they'll have to do ...

Anyway, thanks a lot for you posting! And lets hope that MS will update
the documentation about this soon, so that other developer's won't have
to waste their time (and nerves) on this issue.

Greetings from snowy Austria,
Klaus

Carolyn Napier [MSFT]

unread,
Feb 1, 2005, 3:13:38 PM2/1/05
to
Some additional comments:
- Major upgrade patches w/out sequencing data can be used. However, the
installer will not support major upgrade patches that attempt to have a
MsiPatchSequence table. Thus, MSI 2.0 major upgrade patches should still work
with MSI 3.X.

- The mpatch.exe tool uses the same method that patchwiz does for creating
binary deltas. In fact, it's really not any different at all. Of course
patchwiz has to provide additional metadata that wires the payload to the
database for installation.

- I have forwarded on the lack of documentation in this respect to the technical
documentation writers for the Installer MSDN documentation. It's unfortunate
that this wasn't mentioned. There's a few scattered mentionings of the
recommendation to avoid using major upgrade patches and a tiny blurb in the
MsiPatchSequence table about the fact that this table can't be used by major
upgrade patches. But I agree that it's lacking. The patch sequencing whitepaper
had a few more details than the MSDN documentation on major upgrade patch
support
(http://www.microsoft.com/downloads/details.aspx?familyid=ad7ac91e-2493-4549-ae6f-bf5e007c12a3&displaylang=en).

-Carolyn Napier
Microsoft Windows Installer Team

--
This posting is provided "AS IS" with no warranties, and confers no rights.
Please do not send email directly to this alias. This alias is for newsgroup
purposes only.

MSI FAQ:
<http://www.microsoft.com/windows2000/community/centers/management/msi_faq.mspx>


"Klaus Leinad" <do...@spam.me> wrote in message

news:OevjXfEB...@TK2MSFTNGP11.phx.gbl...

0 new messages