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

Versionsnummer im .msi-Dateinamen


3 replies to this topic

huda

huda
  • Full Members
  • 21 posts

Posted 25 November 2015 - 12:58

Damit man bereits am .msi-Dateinamen erkennt, um was für eine Version es sich bei dem Setup handelt, würden wir gern die Versionsnummer in den Dateinamen schreiben, z.B myproduct-1.0.2-x64.msi. Die Versionsnummer ändert sich aber nicht nur bei einem MajorUpdate, sondern auch bei einem MinorUpdate (z.B. von 1.0.2 auf 1.0.3). Dadurch muss sich dann natürlich auch der .msi-Dateiname ändern, sonst zeigt er ja eine falsche Version an.

 

In einem anderen Beitrag habe ich nun folgenden Satz gelesen:

Du darfst den Namen der .msi-Datei nicht ändern, sonst kannst du kein Minor Update mehr machen.

 

1. Mir ist nicht ganz klar, warum der Dateiname nicht geändert werden darf. Die Vorgängerversion sollte doch über den UpgradeCode gefunden werden, oder?

 

2. Wenn ich ein Differenz-Patch machen möchte, da sich nur wenige Dateien geändert haben, wie mache ich das dann, wenn ich auch hier die Versionsnummer im .msp-Dateinamen haben möchte?

 

3. Wenn es besser wäre, auf die Versionsnummer im Dateinamen zu verzichten, dann wären wir auch zufrieden, wenn die Versionsnummer wenigstens über die Dateieigenschaften angezeigt werden würde. Bei .msi-Dateien gibt es aber keine Vorgabe für die Version. Kann ich per InstallShield eigene Eigenschaften für eine Datei hinzufügen?

 

Wer kann mir hier weiterhelfen? Vielen Dank schon mal.



Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 27 November 2015 - 19:43

Dass man den Namen nicht ändern darf steht in der Doku:

 

The product code must be changed if any of the following are true for the update:

[...]

  • The name of the .msi file has been changed.

https://msdn.microso...0(v=vs.85).aspx

Eine Änderung des ProductCode is gleichbedeutend mit einem Major Upgrade.

 

Man könnte die Version zum Beispiel im Kommentar Feld eintragen (anstatt: Contact your local administrator). Leider kann InstallShield da nicht automatisch die Versionsnummer eintragen, aber immerhin wird es an der gleichen Stelle eingetragen: Unter General Information im Abschnitt Summary Information Stream im Feld Summary Information Stream Comments.



huda

huda
  • Full Members
  • 21 posts

Posted 30 November 2015 - 11:16

Danke für die schnelle Antwort. Jetzt kenne ich wenigstens die Begründung, warum der Dateiname nicht geändert werden darf.

 

Die Idee mit dem Kommentarfeld hatte ich auch schon. Allerdings habe ich mich gewundert, warum bei uns auf einigen Rechners dieses Feld bei den Dateieigenschaften nicht angezeigt wird.

dateieigenschaften.gif

In diesem Fall bringt uns das Kommentarfeld leider nichts und die anderen Felder auch nicht.

 

Vielleicht bringt mich ja auch der Ansatz von Punkt 2 weiter:

Um ein Patch (msp) zu erzeugen, muss ich doch zuvor eine msi-Datei erzeugen. Wenn ich also immer ein MajorRelease mache, kann ich doch den Dateinamen immer ändern und somit die aktuelle Versionsnummer einbauen, oder? Die msp-Datei würde ich dann aus der aktuellen msi-Datei und einer Vorgänger-msi-Datei erstellen. In der msp-Datei wäre doch dann die aktuelle Versionsnummer enthalten, oder?

Ist es egal, wenn ich immer ein MajorRelease mache, auch wenn sich nur wenige Dateien geändert haben? Welchen Vorteil hätten denn ein Minor-oder SmallRelease?


Edited by huda, 30 November 2015 - 11:17.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 03 December 2015 - 15:15

Den Namen der .msp Datei kannst du frei vergeben soweit ich weiß - also auch bei einem Small oder Minor Update.

Major Upgrades werden üblicherweise nicht als .msp verteilt, auch wenn die Doku zu dieser Frage etwas "dünn" ist.