Seite 1 von 1

Installationspfad anpassen - MSIEXEC verwirft die Einstellun

Verfasst: 27 Aug 2014, 15:09
von Mishuri
Aloha liebe OPSI-Gemeinde,

heute wollte ich ein neue Version einer Software installieren - Die Installation verlief soweit ohne Probleme. Das Script überprüft nach alten Versionen, wenn welche da sind -> werden diese deinstalliert. Im Anschluss führt das Script dann die .msi aus. Normalerweise hatte ich den Aufruf in einer [Winbatch_install] gehabt. Der Aufruf sah wie folgt aus:
msiexec /qn /i %ScriptPath%\$setupMsi$ TARGETDIR="%ProgramFilesSysnativeDir%\xyz"
Also passte ich die setupmsi-variable an und testete die Installation. - Installation lief ohne Probleme durch, jedoch wurde das TARGETDIR vollständig ignoriert und das Programm in das Standardverzeichnis installiert.

Ein weitere Versuch mit:
msiexec /qn /i %ScriptPath%\$setupMsi$ TARGETDIR=C:\Programme\XYZ"
brachte auch nichts. Wahrscheinlich stehe ich grade auf dem Schlauch, aber könnte mir bitte jmd. runterhelfen?;(

Viele Grüße und Danke im Voraus

Mishuri

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 27 Aug 2014, 16:45
von holgerv
Mishuri hat geschrieben:Der Aufruf sah wie folgt aus:
msiexec /qn /i %ScriptPath%\$setupMsi$ TARGETDIR="%ProgramFilesSysnativeDir%\xyz"
Also passte ich die setupmsi-variable an und testete die Installation. - Installation lief ohne Probleme durch, jedoch wurde das TARGETDIR vollständig ignoriert [...]
[...] Wahrscheinlich stehe ich grade auf dem Schlauch, aber könnte mir bitte jmd. runterhelfen?;(
Bist Du sicher, dass mit den Anführungszeichen alles richtig ist? - Lässt sich ggf. im Log erkennen.

Hier funktioniert z. B. folgender Befehl:

Code: Alles auswählen

msiexec.exe /i "%ScriptPath%\python-2.7.4.msi" /l* "$LogFile$" /qb! ALLUSERS=1 REBOOT=ReallySuppress TARGETDIR="$InstallDir32$"

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 09:24
von Mishuri
Das "$InstallDir32$" versucht er als Netzwerkadresse aufzulösen. Bei der Installation bekomm ich den Fehler "Auf die Netzwerkadresse $InstallDir32$\deltamaster konnte nicht zugegriffen werden"

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 09:50
von n.wenselowski
Aloha Mishuri,
Mishuri hat geschrieben:Also passte ich die setupmsi-variable an und testete die Installation. - Installation lief ohne Probleme durch, jedoch wurde das TARGETDIR vollständig ignoriert und das Programm in das Standardverzeichnis installiert.
Hier sei mir der Hinweis gestattet, dass nicht jedes Programm auch wirklich der Vorgabe des Zielverzeichnisses folgt - selbst wenn der Installer die Option kennt.
Mishuri hat geschrieben:Das "$InstallDir32$" versucht er als Netzwerkadresse aufzulösen. Bei der Installation bekomm ich den Fehler "Auf die Netzwerkadresse $InstallDir32$\deltamaster konnte nicht zugegriffen werden"
Falls dort wirklich $InstallDir32$ drin steht, dann wäre das ein Hinweis darauf, dass das Ersetzen nicht funktioniert.
Oder ist das von dir ersetzt worden?

Ein Log-Auszug über die entsprechende Sektion wäre sicher hilfreich.


Gruß

Niko

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 10:14
von Mishuri
n.wenselowski hat geschrieben:Aloha Mishuri,

Hier sei mir der Hinweis gestattet, dass nicht jedes Programm auch wirklich der Vorgabe des Zielverzeichnisses folgt - selbst wenn der Installer die Option kennt.
Moin Moin .wenselowski, die alte Version von der Software unterstütze die Version, daher gehe ich davon aus das die neue es auch unterstütz.
Falls dort wirklich $InstallDir32$ drin steht, dann wäre das ein Hinweis darauf, dass das Ersetzen nicht funktioniert.
Oder ist das von dir ersetzt worden?
ich benutze folgenden Befehl:
msiexec.exe /qn /i "%ScriptPath%\$setupMsi$"/qb TARGETDIR="$InstallDir32$\deltamaster"
Es scheint mir als würde die Auflösung des $InstallDir32$" nicht funktionieren, gibt es noch andere "Ersatzbefehle"? Bzw. kann ich das nicht "hard" coden - nach dem Motto "C:\Program Files\deltamaster" ?

Ein Log-Auszug über die entsprechende Sektion wäre sicher hilfreich.
Im Log von Opsi steht leider nur der Exit-Code 1603, was klar ist da er versucht auf ein Netzwerkpfad zu zugreifen, den es nicht gibt bzw. der Zugriff denied wird.

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 12:23
von n.wenselowski
Hallo Mishuri,

ist denn $InstallDir32$ vorher im Script definiert und mit einem Wert belegt worden?

Den Pfad fest ins Script zu schreiben geht auch, ist aber idR nicht empfehlenswert.
Ich würde man einen Blick in die verfügbaren Globalen Konstanten werfen - eventuell willst du anstatt $InstallDir32$ einfach %ProgramFilesDir% verwenden.


Gruß

Niko

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 13:25
von Mishuri
Ich habe nun folgenden Befehl benutzt:
msiexec.exe /i "%ScriptPath%\$setupMsi$" TARGETDIR="%ProgramFilesDir%\deltamaster" /qb
Installation klappt, nur nach wie vor installiert er es ins das Standard Verzeichnis.

Im Log kann ich die Auflösung nachvollziehen
Call "msiexec.exe /i "P:\deltamaster\deltamaster561.msi" TARGETDIR="C:\Program Files\deltamaster" /qb"
Die Befehle sollten doch alle richtig sein, so dass man den Fehler auf die MSI schieben kann?

VG Mishuri

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 15:22
von holgerv
Mishuri hat geschrieben:
Call "msiexec.exe /i "P:\deltamaster\deltamaster561.msi" TARGETDIR="C:\Program Files\deltamaster" /qb"
Führe den Befehl (alles nach dem ersten und vor dem letzten Anführungszeichen) doch mal von Hand aus (als Administrator in einer cmd.exe, natürlich mit einer dann passenden Pfadangabe zu der .msi-Datei) und lasse das "/qb" weg. Der Installer sollte Dich dann nach einem Zielverzeichnis für die Installation fragen und dabei "C:\Program Files\deltamaster" vorschlagen.

Ist das der Fall, oder bleibt auch dann "TARGETDIR" unausgewertet?

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 28 Aug 2014, 17:20
von Mishuri
Ich erhalte folgende Fehlermeldung:
Fehlerbei der Anwendung von Transformen. Stellen Sie sicher, das die angegebenen Transformpfade gültig sind

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Verfasst: 29 Aug 2014, 13:25
von holgerv
Ich würde folgendes testen:
- Installationsmedium auf die lokale Festplatte kopieren (manchmal funktionieren Installationen von Netzlaufwerken nicht)
- cmd.exe als Administrator starten
- mit "cd" in das Verzeichnis wechseln, in dem die .msi-Datei liegt (manchmal finden MSI-Installationen sonst andere Dateien nicht, die sie benötigen, z. B. .cab-Archive oder Transform-Dateien (*.mst)
- 'msiexec.exe /i "C:\...\deltamaster561.msi"' aufrufen und gucken ob alles richtig aussieht, bis nach dem Zielverzeichnis gefragt wird, dann die Installation abbrechen
- 'msiexec.exe /i "C:\...\deltamaster561.msi" TARGETDIR="C:\Programme\deltamaster"' aufrufen und gucken, ob das die Installation "C:\Programme\deltamaster" als Zielverzeichnis vorschlägt.

Damit kannst Du ein bisschen eingrenzen, wo genau der Fehler auftritt.