Hier ist mein Installationsversuch .msi
mithilfe msiexec
der Administrativen PowerShell unter Windows 10.
Ich habe es 7 Mal für jedes der 2 Laufwerke gemacht C:
und D:
(insgesamt 14 Mal) mit unterschiedlichen Argumenten anstelle ARG
und demselben gewünschten Pfadwert.
Vorlage:PS C:\WINDOWS\system32> msiexec /i D:\users\username\downloads\soft\publisher\softwarename\software.msi /passive ARG="D:\Soft\publisher\softwarename"
ARG
S:
TARGETDIR
,INSTALLDIR
,INSTALLPATH
,INSTALLFOLDER
,INSTALLLOCATION
,APPLICATIONFOLDER
,APPDIR
- Bei Ausführung auf demselben Laufwerk wie im Parameter festgelegt: wird auf diesem Laufwerk in einem Standardordner installiert (z. B.
D:\Blender Foundation\Blender\2.81\
) - Beim Ausführen von einem anderen Laufwerk: scheint nichts zu passieren
- Bei Ausführung auf demselben Laufwerk wie im Parameter festgelegt: wird auf diesem Laufwerk in einem Standardordner installiert (z. B.
Gibt es eine Problemumgehung für dieses Verhalten?
Aktualisierung 1
Habe es mit einem anderen .msi
Paket (Blender 2.81) getestet, da das vorherige falsch erstellt wurde. Keiner der oben aufgeführten Argumentnamen hat funktioniert. Jede Installation, sogar von einem D:
Laufwerk, erfolgte im Standardordner C:
.
Aktualisierung 2
Für Blender 2.81, wie ich annehme, für alle .msi
mit gepackten WiX
, war es INSTALL_ROOT
. Sie könnten msiexec /lp! <msi_property_logfile> /i <msi_name>
für alle versuchen .msi
, den Namen des Installationspfadarguments herauszufinden. Dank anYenForYangund seine AntwortHier.
Antwort1
Damit dies ordnungsgemäß funktioniert, müssen Sie die folgenden Schritte ausführen:
.msi
Holen Sie sich eine Liste der in Ihrem Installationsprogramm verwendeten öffentlichen Eigenschaften :PS >.\YourAppInstaller.msi /lp! YourAppInstall.log
;- Installation abbrechen;
.log
Suchen Sie in der im vorherigen Schritt generierten Datei nach öffentlichen Eigenschaften .- Führen Sie es
.msi
mit öffentlicher Eigenschaft von der Befehlszeile aus:- Wenn Ihr Eigenschaftswert Leerzeichen enthält, schließen Sie ihn in ein Backtick+Anführungszeichen-Paar (
`"
) ein. - Beispiel:
PS >.\YourAppInstaller.msi YOUR_PROP=`"value with spaces`"
- Wenn Ihr Eigenschaftswert Leerzeichen enthält, schließen Sie ihn in ein Backtick+Anführungszeichen-Paar (
Um bei einer stillen Installation von Blender einen Installationspfad anzugeben, müssen Sie das Installationsprogramm wie folgt aufrufen (als Beispiel):
.\blender-3.4.1-windows-x64.msi INSTALL_ROOT=`"C:\Program Files\Blender Foundation\Blender\`"
Auf diese Weise versteht es, wo Sie es installieren möchten.