MSP-Datei installieren

Post Reply
wala
Posts: 21
Joined: 15. Dec 2005, 06:59
Contact:

MSP-Datei installieren

Post by wala » 04. Jun 2008, 16:02

Hallo!

Habe bis jetzt noch nicht viel mit MSI gemacht und hab eine Frage bezüglich MSP-Dateien:

Ich hab letztes Jahr ein MSI-Paket erstellt (zuerst Admin-Installation mittels "msiexec /a" gemacht und dann noch eine MSP-Datei installiert). Im Empirum-Paket ist eigentlich nur der msiexec-Aufruf.

Jetzt soll ich noch eine MSP-Datei installieren. Wie würdet ihr das machen?

z. B. Patch beim bestehenden Empirum Paket installieren und dann die Revision erhöhen? Oder neue Version von dem Empirum-Paket erstellen?

Danke
Walter

philipp.kiessler
Posts: 248
Joined: 05. Feb 2007, 11:42
Contact:

Post by philipp.kiessler » 04. Jun 2008, 16:52

Ich hab es es über eine Erhöhung der Revision gemacht. Ich habe dann im Script geprüft: Ist sie nicht installiert, werden msi und msp nacheinander auf die Platte "gekloppt". Ist die Software schon installiert, testet es die Revision. Liegt die unter der aktuellen, wird der Patch installiert. Wenn man will, kann man ihn dann bei aktuellem Revisionsstand die übliche Reparaturinstallation ausführen lassen.

Habe das so beim Update von Adobe Reader 8.1.0 auf 8.1.1 gemacht, denn da gab es von Abobe nur ein msp, keinen vollständigen msi-Installer.
Philipp Kießler

User avatar
Ingo Huber
Posts: 113
Joined: 14. Dec 2004, 13:31
Contact:

Post by Ingo Huber » 05. Aug 2009, 10:37

Da würde mich doch ein Codeschnippsel interessieren. Wie sieht das in der Setup.inf aus?
Frumpus [color=red]♥[/color] addict
[mu'.krum.pus], [frum.pus]

User avatar
hwk06
Posts: 415
Joined: 31. May 2007, 15:54
Location: Freiburg
Contact:

Post by hwk06 » 05. Aug 2009, 14:14

Hallo,

bei unserem Adobe sieht es so aus. Ist grade mit dem aktuellen msp und Erhöhung der Revision verteilt worden. Läuft erst die Reparatur und danach das Update. Funktioniert einwandfrei.

Code: Select all

#Set:Product, DONTDELETE
#Set:Update, DONTDELETE
#Reg:OnUninstallProduct, DELETE
#Reg:Product, DONTDELETE
#Ini:Product, DONTDELETE
#Security:Product
#Set:Uninstall, DELETE
#Set:ChangeMSISourcelist, DONTDELETE

[Set:Product]
Del %MSILogFile%
IF DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-A91000000001},UnInstallString") == "1" Then "RepairMSI" Else "InstallMSI" EndIf

[RepairMSI]
AddMeter 50
Call MsiExec /Fvomus "%SRC%\AdbeRdr910_de_DE.msi"  TRANSFORMS="%SRC%\AdbeRdr910_de_DE.mst" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
IF DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%

[InstallMSI]
AddMeter 50
Call MsiExec /I "%SRC%\AdbeRdr910_de_DE.msi"  TRANSFORMS="%SRC%\AdbeRdr910_de_DE.mst" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-A91000000001},UnInstallString") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%

[Set:Update]
AddMeter 25
Call MsiExec /update "%SRC%\AdbeRdrUpd913_all_incr.msp" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
IF DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%
del "%AllUsersProfile%\Desktop\Adobe Reader 9.lnk"

[Set:Uninstall]
-Del %MSILogFile%
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{AC76BA86-7AD7-1031-7B44-A91000000001},UnInstallString") == "1" Then "AbortMSIUnInst" EndIf
-Call MsiExec /X {AC76BA86-7AD7-1031-7B44-A91000000001} REBOOT=REALLYSUPPRESS /qb-! /Li "%MSILogFile%"
-AddMeter 50

Gruss

Björn
have you tried turning it off and on again ;-)

clippa
Posts: 17
Joined: 10. Apr 2007, 10:58
Location: Wuppertal
Contact:

Post by clippa » 23. Sep 2009, 17:36

Hallo,

ich stehe gerade vor der gleichen "Herausforderung".
Dein Lösungsvorschlag Björn gefällt mir schonmal sehr gut aber fehlen dann nicht die Updates vor 9.1.3 ?

Gruß
Chris

User avatar
hwk06
Posts: 415
Joined: 31. May 2007, 15:54
Location: Freiburg
Contact:

Post by hwk06 » 24. Sep 2009, 10:06

Hallo Chris,

hier ein Update unserer setup.inf:

Paket wird installiert, danach Update. Dann springt es aus dem Skript mit Fehler. D.h., dass es beim nächsten Lauf nochmals ausgeführt wird oder nach Neustart. Dann wird geprüft, welche Version vorhanden ist und dann nochmals ein Repair + das neueste Update installiert. Funktioniert soweit.

Code: Select all

#Set:Product, DONTDELETE
#Set:Update, DONTDELETE
#Reg:OnUninstallProduct, DELETE
#Reg:Product, DONTDELETE
#Ini:Product, DONTDELETE
#Security:Product
#Set:Uninstall, DELETE
#Set:ChangeMSISourcelist, DONTDELETE

[Set:Product]
Del %MSILogFile%
IF DoesRegKeyExist ("HKLM,SOFTWAREMicrosoftWindowsCurrentVersionUninstall{AC76BA86-7AD7-1031-7B44-A91000000001},UnInstallString") == "1" Then "RepairMSI" Else "InstallMSI" EndIf

[RepairMSI]
AddMeter 50
Call MsiExec /Fvomus "%SRC%AdbeRdr910_de_DE.msi"  TRANSFORMS="%SRC%AdbeRdr910_de_DE.mst" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
IF DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%

[InstallMSI]
AddMeter 50
Call MsiExec /I "%SRC%AdbeRdr910_de_DE.msi"  TRANSFORMS="%SRC%AdbeRdr910_de_DE.mst" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
If DoesRegKeyExist ("HKLM,SOFTWAREMicrosoftWindowsCurrentVersionUninstall{AC76BA86-7AD7-1031-7B44-A91000000001},UnInstallString") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%

[Set:Update]
AddMeter 25
SET Adobeversion = %HKLM,"SoftwareMicrosoftWindowsCurrentVersionUninstall{AC76BA86-7AD7-1031-7B44-A91000000001}","DisplayVersion"%
If %Adobeversion% == "9.1.0" THEN "Update2" Else "Update3"

[Update2]
If %Adobeversion% == "9.1.2" THEN "Update3"
Call MsiExec /update "%SRC%AdbeRdrUpd912_all_incr.msp" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
IF DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%
del "%AllUsersProfile%DesktopAdobe Reader 9.lnk"
Abort "Neuere Version nach Ablauf Agent oder Neustart"

[Update3]
If %Adobeversion% == "9.1.3" THEN "NothingToDo"
Call MsiExec /update "%SRC%AdbeRdrUpd913_all_incr.msp" REBOOT=REALLYSUPPRESS ARPSYSTEMCOMPONENT=1 /qb-! /Li "%MSILogFile%"
IF DoesTextInFileExist ("%ReInstSuccessMessage1031%", "%MSILogFile%") == "0" & DoesTextInFileExist ("%ReInstSuccessMessage1033%", "%MSILogFile%") == "0" Then "AbortMSIInst" EndIf
Del %MSILogFile%
del "%AllUsersProfile%DesktopAdobe Reader 9.lnk"

[NothingToDo]
Exit

[Set:Uninstall]
-Del %MSILogFile%
If DoesRegKeyExist ("HKLM,SOFTWAREMicrosoftWindowsCurrentVersionUninstall{AC76BA86-7AD7-1031-7B44-A91000000001},UnInstallString") == "1" Then "AbortMSIUnInst" EndIf
-Call MsiExec /X {AC76BA86-7AD7-1031-7B44-A91000000001} REBOOT=REALLYSUPPRESS /qb-! /Li "%MSILogFile%"
-AddMeter 50
Gruß

Björn

PS: War ne schnelle Lösung, geht vielleicht auch eleganter.
have you tried turning it off and on again ;-)

clippa
Posts: 17
Joined: 10. Apr 2007, 10:58
Location: Wuppertal
Contact:

Post by clippa » 24. Sep 2009, 10:29

So hab ich das gestern auch hingebastelt, nur ohne Abfragen.
Die werd ich noch ergänzen, dann ist das schon sehr elegant wie ich finde :-)

Danke

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: No registered users and 5 guests