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

IS2008 Major Upgrade Frage


14 replies to this topic

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 04 June 2008 - 15:56

Hallo Forum,

ich habe ein bisschen mit den Upgrademechanismen von IS2008 herum experimentiert.
So wie ich es verstanden habe, wird bei einem Major Upgrade die alte Installation deinstalliert und dann die neue wieder installiert.
Ich habe nun den Package Code, Product Version und Product Code geändert, wie es auf dieser Seite (http://knowledge.mac...rMinorSmall.htm) beschrieben steht.

Starte ich das Setup läuft das Programm durch, als wenn es eine Erstinstallation. Es kommt kein Hinweis, dass die alte Version erst deinstalliert. In der Systemsteuerung habe ich dann unter Software zweimal den selben Eintrag, nur mit unterschiedlichen Versionsnummern.

Kann mir das jemand erklären?
Danke

Danny Hötzel

Danny Hötzel
  • Full Members
  • 17 posts

Posted 05 June 2008 - 07:54

Hallo,

wenn der Produktcode geändert wird, weiß Windows Installer nicht, dass es einen Zusammenhang zwischen den beiden Versionen gibt. Ist nützlich, wenn man mehrer Versionen nebeneinander installieren will. Ansonsten sollte der Produktcode der alten Version entsprechen und dann wird auch erst deinstalliert und anschließend die neue Version eingespielt.

Gruß,
Danny

ali

ali
  • Full Members
  • 1,008 posts

Posted 05 June 2008 - 08:05

QUOTE (Danny Hötzel @ 2008-06-05 07:54)
wenn der Produktcode geändert wird, weiß Windows Installer nicht, dass es einen Zusammenhang zwischen den beiden Versionen gibt. Ist nützlich, wenn man mehrer Versionen nebeneinander installieren will. Ansonsten sollte der Produktcode der alten Version entsprechen und dann wird auch erst deinstalliert und anschließend die neue Version eingespielt.

du meinst nicht den Product sondern den Upgradecode rolleyes.gif

ali

ali
  • Full Members
  • 1,008 posts

Posted 05 June 2008 - 08:09

QUOTE (Sascha M. @ 2008-06-04 15:56)
So wie ich es verstanden habe, wird bei einem Major Upgrade die alte Installation deinstalliert und dann die neue wieder installiert.  -> richtig
Ich habe nun den Package Code, Product Version und  Product Code geändert, wie es auf dieser Seite (http://knowledge.mac...rMinorSmall.htm) beschrieben steht. -> richtig

Starte ich das Setup läuft das Programm durch, als wenn es eine Erstinstallation. Es kommt kein Hinweis, dass die alte Version erst deinstalliert. In der Systemsteuerung habe ich dann unter Software zweimal den selben Eintrag, nur mit unterschiedlichen Versionsnummern. -> fehlendes Upgrade Item


Hallo,

wenn du ein MajorUpgrade erstellen willst, musst du ein entsprechendes Upgrade Item in dem UpgradeView einstellen. Dies wird dann mit den Versionen bzw. Versionsbereich versehen, den der Installer beim Installieren deines jetzigen Produktes erkennen und deinstallieren soll.

Edited by ali, 05 June 2008 - 08:10.


Danny Hötzel

Danny Hötzel
  • Full Members
  • 17 posts

Posted 05 June 2008 - 09:00

QUOTE (ali @ 2008-06-05 07:05)
du meinst nicht den Product sondern den Upgradecode rolleyes.gif

Nein ich meine schon den Produktcode, da dieser für den Windows Installer relevant ist, um gleiche Produkte zu identifizieren.
Mit dem Upgradecode ist es so, dass man Produkte mit gemeinsame Upgradecode aktualisieren kann. Wenn ich z.B. eine Version 1.0 und 2.0 auf meinen Rechner installiert habe, kann ich mit dem Upgradecode der Version 1.0 auch genau diese Version upgraden. Die Version 2.0 bleibt in diesem Fall unangetastet. Voraussetzung ist wie oben beschrieben der entprechende Produktcode.
wink.gif

Gruß,
Danny

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 05 June 2008 - 09:18

Hää, ich bin da noch kein Profi und etwas verwirrt. smile.gif
Ich habe jetzt den Produktcode, die Version, den Paketcode geändert und zusätzlich ein Major-Upgrade-Item hinzugefügt.
Das hat dann alles so geklappt wie ich wollte. Also alte Version wurde gelöscht und dafür die neue installiert.

Den Upgradecode habe ich nicht geändert. Kann ich aber mal machen und berichten was passiert.

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 05 June 2008 - 09:30

Jetzt habe ich den Upgradecode geändert, die Version, den Paketcode und ein Major-Upgrade-Item hinzugefügt.

Als ich das Setup startete kam die Frage, ob ich ein Update durchführen möchte. Also hat er dann ein Minor-Update gemacht! Richtig?

Puhh, alles gar nicht so einfach smile.gif

ali

ali
  • Full Members
  • 1,008 posts

Posted 05 June 2008 - 09:34

QUOTE (Danny Hötzel @ 2008-06-05 09:00)
QUOTE (ali @ 2008-06-05 07:05)
du meinst nicht den Product sondern den Upgradecode rolleyes.gif

Nein ich meine schon den Produktcode, da dieser für den Windows Installer relevant ist, um gleiche Produkte zu identifizieren.
Mit dem Upgradecode ist es so, dass man Produkte mit gemeinsame Upgradecode aktualisieren kann. Wenn ich z.B. eine Version 1.0 und 2.0 auf meinen Rechner installiert habe, kann ich mit dem Upgradecode der Version 1.0 auch genau diese Version upgraden. Die Version 2.0 bleibt in diesem Fall unangetastet. Voraussetzung ist wie oben beschrieben der entprechende Produktcode.



Ein Major Upgrade erstellt man nicht indem man den Productcode gleich lässt, und wie man ein MajorUpgrade erstellt war hier die Frage.

QUOTE
"Ansonsten sollte der Produktcode der alten Version entsprechen und dann wird auch erst deinstalliert und anschließend die neue Version eingespielt"
->ist falsch

Edited by ali, 05 June 2008 - 09:36.


ali

ali
  • Full Members
  • 1,008 posts

Posted 05 June 2008 - 09:40

QUOTE (Sascha M. @ 2008-06-05 09:30)
Jetzt habe ich den Upgradecode geändert, die Version, den Paketcode und ein Major-Upgrade-Item hinzugefügt.

Als ich das Setup startete kam die Frage, ob ich ein Update durchführen möchte. Also hat er dann ein Minor-Update gemacht! Richtig?

Puhh, alles gar nicht so einfach smile.gif

Hallo Sascha,
ist gar nicht so schwer.
Ändere bitte den Produktcode, den Paketcode und erhöhe die MSIVersion.
Stelle ein UpgradeItem ein mit der Eigenschaft "Erst deinstallieren dann Neuinstallieren", und gebe hier deine Vorgänger MSI-Version an.
Das sollte schon reichen damit dein MajorUpgrade erkannt wird.
In einem Log File sollte dann auch die Property IS_MAJOR_UPGRADE gesetzt sein.
Dies findest du im log bei "Checking related product"

Edited by ali, 05 June 2008 - 09:46.


Danny Hötzel

Danny Hötzel
  • Full Members
  • 17 posts

Posted 05 June 2008 - 09:48

QUOTE (ali @ 2008-06-05 08:34)
Ein Major Upgrade erstellt man nicht indem man den Productcode gleich lässt, und wie man ein MajorUpgrade erstellt war hier die Frage.

QUOTE
"Ansonsten sollte der Produktcode der alten Version entsprechen und dann wird auch erst deinstalliert und anschließend die neue Version eingespielt"
->ist falsch

Sorry, my pitfall, du hast Recht, es wird nur ein Update dadurch.

Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 05 June 2008 - 10:16

Hi,

danke an alle. Denke so langsam blicke ich die ganze Sache.
Ich habe aber noch eine Frage zum Minor-Update. Reicht es dafür aus, einfach den Produktcode und die MSI-Version zu ändern, oder brauche ich da ein MinorUpgradeItem?

ali

ali
  • Full Members
  • 1,008 posts

Posted 05 June 2008 - 10:24

hi,
der Productcode wird nur beim Major geändert.
Wenn du ein Minor Upgrade erstellen willst, dann ändere den Paketcode und erhöhe die ProduktVersion von z.b. 1.0.0 auf 1.1.0
Wenn du nur den Paketcode änderst und keine ProduktVersion änderst, dann erhältst du ein so genanntes Small-Update.
Ein Minor Upgrade Item würde ich anlegen, braucht man aber glaub ich nicht mehr, da man in den Releaseeinstellungen angeben kann, das der Paketcode automatisch neu erzeugt wird. Dies ist eine "default" Einstellung von IS.

Edited by ali, 05 June 2008 - 10:26.


Sascha M.

Sascha M.
  • Full Members
  • 57 posts

Posted 05 June 2008 - 10:37

Hi,

ja war der Paketcode und nicht der Produktcode und der wird bei jedem Erstellen neu generiert, wenn es in den Releaseeinstellungen so angegeben ist(default).
Ich habe mal Testweise ein MinorItem angelegt. Dann kann ich aber nicht mehr kompilieren, weil ich ein Pfad zu einem Setup angeben muss das ich aktualisieren möchte. Verstehe noch nicht, warum ich da ein Setup angeben muß, wenn doch nur der Paketcode und die Version erhöht werden müsste.

ali

ali
  • Full Members
  • 1,008 posts

Posted 05 June 2008 - 10:44

wenn du den Pfad zu deinem alten Setup angibst der mit dem Minor Upgrade erstellt wird, hast du wenig Probleme mit dieser Funktionierenden Variante dann auch ein Patch zu erzeugen. ->Validierung. Das solltest du dir aber noch einmal ansehen, ist ein wenig verzwickt.

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 05 June 2008 - 13:10

In diesem Artikel gibt es unter "What codes do I need to change?" eine Tabelle, die das veranschaulicht:
http://www.installsi.../Upgrading.html