istike2
Goto Top

MS Office und Language Pack Installation via PowerShell sinnvoll "verzögern"

Hallo,

wir haben eine PS Script, die diverse Tools installieren muss, die nicht im Chocolatey Repo sind.

Das Problem ist, dass die Reihenfolge stimmen muss bzw. diverse Eingaben getätigt werden sollen.
Das MS Support Tool soll das vorinstallierte Office 365 entfernen und die weiteren Installer installieren dann Office 2016 + Language Packs vom USB Stick.

D:\MS_Support_Tool.exe 
D:\#11_Visio\setup.exe -y 
D:\#12_Office_2016\setup.exe -y 
D:\#13_Office_Language Pack\setup.exe -y 

MS Support Tool wird noch korrekt gestartet, danach kommen nur Fehlermeldungen, weil der 1. Installer noch läuft.

Die Frage ist, ob man solche komplexe Installationsvorgänge mit PS überhaupt automatisieren kann. Wenn ja, wie verzögere ich die Script so, dass die Installer aufeinander "warten".

Vielen Dank für eure Meinungen.

LG

I.

Content-Key: 605027

Url: https://administrator.de/contentid/605027

Printed on: April 19, 2024 at 07:04 o'clock

Member: DerWoWusste
DerWoWusste Sep 16, 2020 at 10:52:31 (UTC)
Goto Top
In Batch würde das funktionieren, da Batch wartet, Powershell per Default nicht.
Member: mbehrens
mbehrens Sep 16, 2020 at 11:07:29 (UTC)
Goto Top
Zitat von @istike2:

Die Frage ist, ob man solche komplexe Installationsvorgänge mit PS überhaupt automatisieren kann. Wenn ja, wie verzögere ich die Script so, dass die Installer aufeinander "warten".

Wie wäre es mit einen Start-Process und -Wait?
Mitglied: 145916
145916 Sep 16, 2020 updated at 11:22:23 (UTC)
Goto Top
Zitat von @DerWoWusste:

In Batch würde das funktionieren, da Batch wartet, Powershell per Default nicht.
Nein das ist so nicht richtig, Powershell wartet ebenfalls wenn man den Befehl direkt angibt (ohne start-process), aber es gibt bei den setup.exe's einige die selbst nicht auf den Abschluss der Installation warten sondern die Installation mit einem anderen Prozess starten und sich direkt wieder selbst beenden!
Der aktuelle Office CTR Installer verhält sich aber standardkonform und wartet bis zum Abschluss. Nimm also entweder die MSIs aus den EXEs und schmeiß die Installation selbst mit msiexec und quiet Parametern an oder teste vorher ob die EXE schon vor dem Ende auf die Konsole zurückkehrt.
Member: istike2
istike2 Sep 16, 2020 at 12:02:19 (UTC)
Goto Top
Hallo Eaglefinder,

vielen Dank! ich würde es mit dem MSIEXEC probieren.

Wie soll ich MSI aus dem EXE nehmen oder meinst du eine MSI mit WIWW erstellen?

Gr. I.
Member: DerWoWusste
DerWoWusste Sep 16, 2020 at 12:50:50 (UTC)
Goto Top
Nein das ist so nicht richtig,...
Danke für die Erklärung, sehr interessant!
Mitglied: 145916
145916 Sep 16, 2020 at 13:11:11 (UTC)
Goto Top
Zitat von @istike2:
Wie soll ich MSI aus dem EXE nehmen oder meinst du eine MSI mit WIWW erstellen?
Die meisten setup.exe 's sind Archive bzw. Wrapper in denen oftmals MSIs enthalten sind. UniversalExtractor liefert einem oft den Inhalt, alternative das Setup starten und in die temporären Ordner rein schauen dorthin entpacken sich ja viele dieser Setups. Es gibt auch wieder Setups die enthalten auch Parameter zum Extrahieren von Setup-Dateien.
Member: istike2
istike2 Sep 16, 2020 at 15:05:06 (UTC)
Goto Top
Vielen Dank!

Am Ende habe ich die MSI mit einem kostenlosen MSI Wrapper erstellt:

Die Script sieht jetzt so aus:

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))  
choco install openvpn -y 
choco install paint.net -y 
choco install googlechrome -y 
choco install gimp -y 
choco install inkscape -y 
choco install irfanview -y 
choco install jre8 -y 
choco install mendeley -y 
choco install notepadplusplus.install -y 
choco install skype -y 
choco install skype-chrome -y 
choco install veeam-agent -y 
choco install vlc -y 
choco install zotero -y 
choco install firefox -y
Start-Process msiexec.exe -Wait -ArgumentList '/I D:\#11_Visio\setup.msi /quiet'  
Start-Process msiexec.exe -Wait -ArgumentList '/I D:\#12_Office_2016\setup.msi /quiet'  
Start-Process msiexec.exe -Wait -ArgumentList '/I D:\#13_Office_Language_Pack\setup.msi /quiet'  

Nach der Chocolatey-Installation von Firefox öffnet sich der Visio Installer-GUI, wo ich die zu installierende Komponente anpassen kann. Ich wähle hier aus, dass alle Komponente auf die Festplatte muss. Wenn ich dann "weiter" klicke, kommt eine Fehlermeldung, dass die Installation nicht durchgeführt werden kann, weil ein anderer Installer noch läuft ... Soll ich hier die Script noch weiter anpassen oder kann es sein, dass aus sonstigen Installern wirklich etwas "übrig" blieb.

Wenn ich diesen Installer abbreche, öffnet sich die es Office und endet mitderselben Fehlermeldung. Dasselbe mit dem Language Pack. Offensichtlich werden die Installationen irgendwie nicht sauber abgeschlossen.

Gr. I.
Mitglied: 145916
145916 Sep 16, 2020 updated at 15:17:08 (UTC)
Goto Top
Am Ende habe ich die MSI mit einem kostenlosen MSI Wrapper erstellt:
Ein Wrapper bringt dir hier nichts wenn die enthaltenen exe's sich trotzdem darin beenden bevor die Installation zu Ende ist !
Benutze das dafür gedachten Office Deployment Tool dann lüppt das hervorragend
https://docs.microsoft.com/de-de/deployoffice/office2019/deploy
Nicht verwirren lassen, auch Office 2016 lässt sich damit verteilen wenn man die entsprechenden ProductIDs verwendet.
Member: istike2
istike2 Sep 24, 2020 at 13:37:15 (UTC)
Goto Top
Vielen Dank!

Die XML-Config scheint nicht mehr zu funktionieren.
https://officedev.github.io/Office-IT-Pro-Deployment-Scripts/XmlEditor.h ...

Ein Link leitet dann auf O365 weiter.

Hier ist die Config für die Installation von 2019.

Hier gibt weitere Hilfe für 2016: http://techgenix.com/office-2016-deployment-tool-customization/