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

Vorhandene MSI Installation überschreiben


4 replies to this topic

DoSDev

DoSDev
  • Full Members
  • 17 posts

Posted 05 December 2007 - 13:37

Hallo Zusammen,

da ich neu in diesem Forum bin, möchte ich mich ersteinmal vorstellen.
Beruf: Fachinformatiker Anwendungsentwicklung
Firma: Ein weltweit aktives Unternehmen, das Produkte für andere Hersteller produziert.
Interessen bzw. Tätigkeiten:
* Deployment: Windows Installer Xml (WiX), MSI Allgemein
* Development:
** C/C++
** Visual Basic 6
** C# .Net
** .Net Framework 1.0 bis 3.5
** und viele weitere neue Techniken.

Im Moment erstelle ich für diverse Software Produkte meiner Firma auf MSI basierende Installations Pakete (mittels WiX). Diese funktionieren auch schon recht gut. Nun habe ich habe aber folgendes Problem:
Die Abteilung, für die ich im Moment das Setup zusammenbastle hat früher InstallShield4 verwendet. Ein Update wurde hierbei immer in Form eines neuen Setups an den Kunden weitergegeben, der nichts anderes machen musste als dieses Setup über das vorhandene zu installieren (das funktionierte auch fehlerfrei).
Nun ja, jetzt möchte ich MSI in dieser Abteilung einsetzen, nur kann dieses "Feature" (Build2 über Build1 drüberinstallieren) nicht mit MSI (soweit ich es ausprobiert habe) nicht unterstützt werden.
Folgendes habe ich bereits ausprobiert:
* msiexec /package Setup.msi REINSTALLMODE=amus REINSTALL=ALL
* msiexec /package Setup.msi REINSTALL=ALL
* In der MSI habe ich auch keinen Switch gefunden.
Meine Frage:
Gibt es eine Möglichkeit, ohne dass ich die ProductId ändere (was meines Erachtens ein Hack wäre), das oben genannte Verfahren (Build2 Setup.msi über Build1 Setup.msi zu installieren) durchzuführen?

Danke schon im Voraus für eure Bemühungen.

Mit freundlichen Grüßen

DoSDev

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 07 December 2007 - 19:12

Wichtig ist das "v" im REINSTALLMODE, es weist den Installer an, die .msi-Datei neu zu cahcen:

msiexec.exe /i deine.msi REINSTALLMODE=vomus REINSTALL=ALL

Außerdem MUSST du IMMER den PackageCode (nicht den ProductCode) ändern.

Das Ändern des ProductCode ist kein Hack, sondern du machst dann ein sog. Major Upgrade (andernfalls ein Small oder Minor Update). Für ein Major Upgrade müssen noch ein paar ANgaben in die Upgrade Tabellw. Dafür unterliegt es nicht den Restriktionen von Small und Minor Updates.

DoSDev

DoSDev
  • Full Members
  • 17 posts

Posted 10 December 2007 - 10:26

Hallo Stefan,

vielen Dank für Deinen Post. Ich werde die darin beschriebenen Möglichkeiten erst einmal ausprobieren. Bei weiteren Fragen melde ich nochmal.

Mit freundlichen Grüßen

DoSDeV

DoSDev

DoSDev
  • Full Members
  • 17 posts

Posted 14 December 2007 - 09:15

Hallo Stefan,

ich habe versucht die Installation mit den von Dir vorgeschlagenen Parametern durchzuführen. Nur scheint das nicht den von mir gewünschten Effekt zu haben.

Vielleicht habe ich mein Problem auch falsch beschrieben, deshalb hier nochmal meine Situation.
- Version 1.0 meiner Anwendung APPLICATION.exe wird mit dem Setup.msi vom (z.B.) 13.12.2007 auf dem Testserver installiert.
- Die Anwendung APPLICATION.exe wird vom 13.12.2007 auf den 14.12.2007 neu erstellt (das Erstellungsdatum der EXE ändert sich --> 14.12.2007).
- Version 2.0 meiner Anwendung (anderes Erstellungsdatum) soll durch das Setup.msi auf dem Testserver erneut (ohne vorherige Deinstallation) installiert werden.

--> Resultat der Installation von Version 2.0 ist, dass sich das Erstellungsdatum nicht auf 14.12.2007 geändert hat und APPLICATION.exe weiterhin die gleiche ist (auch wenn ich die von Dir angegebenen Parameter verwende).

Vielleicht hilft Dir diese Beschreibung weiter oder liegt das daran, dass ich den PackageCode nicht geändert habe?

Danke schon im Voraus für Deine Bemühungen.


Mit freundlichen Grüßen

DoSDev

Edited by DoSDev, 14 December 2007 - 09:29.


Guest_Tino Teuber

Guest_Tino Teuber
  • Guests

Posted 18 December 2007 - 14:55

QUOTE (DoSDev @ 2007-12-14 09:15)
HVielleicht hilft Dir diese Beschreibung weiter oder liegt das daran, dass ich den PackageCode nicht geändert habe?

Äh, warum hast du den denn nicht geändert?

Wenn ein Setup geändert wird muss der PackageCode auch geändert werden!

Gruß
Tino