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

Update between two older Setups


11 replies to this topic

LuckyCow

LuckyCow
  • Full Members
  • 7 posts

Posted 16 February 2012 - 11:32

Dear people,

I have two setups (compete with setup.exe and stuff,
older and newer version) and want to patch one with
the other. I'm using IS 12 and there the "Patch Design"
(but have also access to IS 2011). Now if I specify
one version as "Previous" and the other as "Latest"
and then create the patch, I get the error message

"The setup needs to perform a Major Upgrade of
the previous setup specified. However, the
Upgrade Code for the previous setup [3] is
not in the upgrade table. An upgrade will not occur."

Can anybody tell me what I have to change?


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 17 February 2012 - 15:48

Looks like you broke the rules for "minor updates", maybe removed a component or something, so a minor update isn't possible, but a "major upgrade" is required.
You can read about the differences between "major" and "minor" in the help files.


LuckyCow

LuckyCow
  • Full Members
  • 7 posts

Posted 17 February 2012 - 17:51

QUOTE (Stefan Krueger @ 2012-02-17 15:48)
Looks like you broke the rules for "minor updates", maybe
removed a component or something, so a minor update
isn't possible, but a "major upgrade" is required.


First time, yes. But unintentionally; we want to do major updates anyway, so I read that defining a major update is required, which I did. I also made sure the version numbers differ in the 3rd part.

Do you know, by any chance, where I could download an example QuickPatch project?


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 17 February 2012 - 18:18

For a Major Upgrade you also need to generate a new ProductCode.

I don't have samples for QuickPatch projects.

LuckyCow

LuckyCow
  • Full Members
  • 7 posts

Posted 20 February 2012 - 09:44

QUOTE (Stefan Krueger @ 2012-02-17 18:18)
For a Major Upgrade you also need to generate a new ProductCode.

My main problem of understanding is this: The Quick patch project asks for the installation to be patched - one selects the setup.exe - and you can enter the "old" version number and the "new" one but I didn't find a place to specify the new installation. I would expect you could specify also the setup.exe of the new version.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 20 February 2012 - 18:10

Patch design view creates a difference between the opld and the new version. In contrast, Quick Patch only uses the old version and you specify the files etc. you want to replace.

LuckyCow

LuckyCow
  • Full Members
  • 7 posts

Posted 21 February 2012 - 09:22

QUOTE (Stefan Krueger @ 2012-02-20 18:10)
Patch design view creates a difference between the opld and the new version. In contrast, Quick Patch only uses the old version and you specify the files etc. you want to replace.

I see.. thank you. But the patch design view complains about the
Upgrade Code for the previous setup not being contained in
the upgrade table even though I created a major upgrade in the
Upgrades section and put the upgrade code in question there. Can it
be that I have to create a kind of connection between the upgrade
section and the patch design view?


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 23 February 2012 - 10:14

Upgrade table (and Upgrade code) only matter for a Major Upgrade, and it's not recommended to ship a Major Upgrade in form of a patch (.msp). Better use a full .msi instead.

LuckyCow

LuckyCow
  • Full Members
  • 7 posts

Posted 23 February 2012 - 16:37

QUOTE (Stefan Krueger @ 2012-02-23 10:14)
Upgrade table (and Upgrade code) only matter for a Major Upgrade, and it's not recommended to ship a Major Upgrade in form of a patch (.msp).  Better use a full .msi instead.



The problem is that I don't have both setups as Installshield projects but only as complete setups, with .msi and setup.exe.

What I don't understand is that Val0003 complains of the upgrade id not being in the upgrade table but it clearly is (Direct Editor, Section "Upgrade"):

Attached Images

  • DirectEntry.jpg


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 24 February 2012 - 15:39

QUOTE
The problem is that I don't have both setups as Installshield projects but only as complete setups, with .msi and setup.exe.

I don't see why this would force you to build a .msp patch?

In your screenshot, there's only one entry in the Upgrade table, and that's the one to prevent downgrades. You need to have another entry to enable upgrades, i.e. one that will uninstall older versions.

LuckyCow

LuckyCow
  • Full Members
  • 7 posts

Posted 27 February 2012 - 13:40

QUOTE (Stefan Krueger @ 2012-02-24 15:39)

I don't see why this would force you to build a .msp patch?

In your screenshot, there's only one entry in the Upgrade table, and that's the one to prevent downgrades. You need to have another entry to enable upgrades, i.e. one that will uninstall older versions.


I'm not sure we have to. The basic goal for now is the following:
Wen have one version of our setup and want do replace
some DLLs and EXEs by newer versions, plus add a few new
DLLs. That's all - but we don't want to re-distribute the whole
setup because it is too large. Maybe a "differeential setup"
is a better solution but I don't find anything about it in the docs.

I added an Upgrade section in the upgrade table but
the Val0003 problem remains the same. The GUID it
complains about is in the second row:


Attached Images

  • DirectEntry3.jpg


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 29 February 2012 - 17:42

You're not setting the version clumns and the attributes appropriately for perferming a Major Upgrade. Please read about the Upgrade table to try using the standard tab instead of the Advanced tab.

"Differential Media" is for InstallScript projects only. The MSI equivalent would be a patch (.msp). However a patch should only be used for Small or Minor Updates, not for Major Upgrades. And that in turn requires that you follow the component rules for minor updates.