Installationspfad anpassen - MSIEXEC verwirft die Einstellun

Antworten
Mishuri
Beiträge: 7
Registriert: 27 Aug 2014, 14:52

Installationspfad anpassen - MSIEXEC verwirft die Einstellun

Beitrag 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
holgerv
Beiträge: 288
Registriert: 20 Aug 2012, 09:35

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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$"
Mishuri
Beiträge: 7
Registriert: 27 Aug 2014, 14:52

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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"
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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

Code: Alles auswählen

import OPSI
Mishuri
Beiträge: 7
Registriert: 27 Aug 2014, 14:52

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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.
Benutzeravatar
n.wenselowski
Ex-uib-Team
Beiträge: 3194
Registriert: 04 Apr 2013, 12:15

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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

Code: Alles auswählen

import OPSI
Mishuri
Beiträge: 7
Registriert: 27 Aug 2014, 14:52

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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
holgerv
Beiträge: 288
Registriert: 20 Aug 2012, 09:35

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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?
Mishuri
Beiträge: 7
Registriert: 27 Aug 2014, 14:52

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag von Mishuri »

Ich erhalte folgende Fehlermeldung:
Fehlerbei der Anwendung von Transformen. Stellen Sie sicher, das die angegebenen Transformpfade gültig sind
holgerv
Beiträge: 288
Registriert: 20 Aug 2012, 09:35

Re: Installationspfad anpassen - MSIEXEC verwirft die Einste

Beitrag 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.
Antworten