MSI bzw. MSU Datei installieren über Powershell

Hallo Community

Ich hab mir für die Installation einer MSU Datei ein Powershell Skript ausgeführt, welcher in der letzten Zeile einen Fehler ausgibt. Diese Eigenschaft verstehe ich nicht, denn die echos im Skript zeigen mir eine Korrekte Ausgabe.

Hier der Auszug aus meinem Skript

$AppName = "Windows6.1-KB974405-x64.msu"
$DataStamp = get-date -Format yyyyMMddTHHmmss
$LogFile = '{0}-{1}.log' -f $AppName,$DataStamp
$MsuProc = "wusa.exe"
$MSIArguments = @(
"update"
"/quiet"
"/norestart"
"log"
"$LogFile"
)

echo $PSScriptRoot
echo $AppName
Start-Process $MsuProc $AppName -ArgumentList $MSIArguments

die zwei Echos sind nur zur Überprüfung ob die Variablen die richtige Ausgabe stellen.

Die Fehlermeldung lautet dann..

Start-Process : Es wurde kein Positionsparameter gerunden, der das Argument "System.Object[]" akzeptiert

back-to-topStart-Process $MsuProc $AppName -ArgumentList $MSIArguments

+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidAgrument: (:) face-smile [Start-Process], ParameterBindingException
+ FullyQualifiedErrorID : PositionalParameterNotFound,Microsoft.PowerShell.Commands.StartProcessCommand



Was mache ich beim Aufruf meines Befehls falsch?

Im Voraus vielen Dank für Eure Unterstützung.

Content-Key: 621876

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

Ausgedruckt am: 18.01.2022 um 09:01 Uhr

Mitglied: 146189
Lösung 146189 13.11.2020 aktualisiert um 09:46:20 Uhr
Goto Top
$Appname also die Datei die du installieren willst kommt mit in das Argumentlist Array, nicht als weiterer Parameter in start-process deswegen auch die Fehlermeldung , falsche Parameter-Besetzung 😉
Kaffee rüber schieb ...
Mitglied: Ralus67
Ralus67 13.11.2020 um 10:12:23 Uhr
Goto Top
Danke, das war die Lösung...

Ich verstehe noch nicht, wann ich einen weiteren Parameter verwenden soll und wann es in die ArgumentListe reinkommt
Mitglied: 146189
146189 13.11.2020 aktualisiert um 10:41:19 Uhr
Goto Top
Zitat von @Ralus67:
Ich verstehe noch nicht, wann ich einen weiteren Parameter verwenden soll und wann es in die ArgumentListe reinkommt

Die meisten CMDLets haben nur eine feste Anzahl an Parametern, und du übergibst eine Variable ohne irgendeinen Parameterbezeichner mit führendem Dash(-) also muss die PS anhand Ihrer CMDLet Definition bzw. Parameter-Position diesen ermitteln. Gibt es keinen mit seiner Typart oder steht der an der falschen Stelle oder ist zu viel gibts nen Fehler.

Ein
help start-process -full
oder das Lesen der Doku hilft dir es zu verstehen:
Cmdlet-Parameter
Start-Process
Heiß diskutierte Beiträge
question
Windows Exchange-Server benötige ich eine Domain?Bella21Vor 1 TagFrageWindows Server21 Kommentare

Hallo alle zusammen, ich bin neu auf dem Gebiet. Ich habe Exchange Server auf einen Windows Server 2012 installiert. Nach der Installation fertig war, ist ...

question
WEBSEITE zerschossen. Brauche dringend hilfe! :) gelöst wieoderwasVor 1 TagFrageWebentwicklung5 Kommentare

Hallo zusammen, ich wollte eben auf der Typo3 Seite von unseren Unternehmen die Erweiterung der IT Kanzlei installieren. Nun erhalte ich beim Webseiten aufruf folgenden ...

question
Scanner Log4JjoergVor 1 TagFrageSicherheits-Tools15 Kommentare

Hallo zusammen, Log4J ist ja mittlerweile schon ein paar Tage her aber immer noch aktuell. Ich bin aktuell auf der Suche nach einem Scanner der ...

question
Welcher Switch Hersteller kann trotz Silikonknappheit ordentlich liefern?NordicMikeVor 1 TagFrageSwitche und Hubs7 Kommentare

Moin zusammen, dieses Ubiquiti Zeug muss weg, das kann ja nicht einmal QoS, auch, wenn der Unifi Controller mit seiner zentralen Verwaltung gut zu bedienen ...

question
DNS neu einrichtensmschmidtVor 1 TagFrageDNS14 Kommentare

Hallo zusammen, hab wieder ein Problem: Hab einen neuen Windows Server 2022 (Server3) in unsere Domain aufgenommen, zum DC gemacht und DHCP und DNS installiert. ...

question
Telefonie noch im alten Standort erneuern?GrinskeksVor 1 TagFrageTK-Netze & Geräte7 Kommentare

Hallo zusammen, bei meinem neuen Arbeitgeber steht der Umzug in ein neues Firmengebäude und eine Aktualisierung der Telekommunikation an. Wir hatten einen Support zur betagten ...

question
Eigene Hardware + VLAN an Vodafone Kabel gelöst darkness08Vor 1 TagFrageInternet12 Kommentare

Guten Morgen Zusammen, ich möchte gerne an einen Vodafone Kabelanschluss eigene Hardware betreiben. Da es sich hierbei nicht um meinen eigenen Anschluss handelt fehlt mir ...

question
Windows DNS Server liefert veraltete Records aus gelöst BorantoVor 1 TagFrageDNS6 Kommentare

Hallo zusammen, ich wende mich heute mit einem Problem an euch, welches mir bereits seit längerem Kopfschmerzen bereitet. Eigentlich ist meine ganzes Netzwerk eine Baustelle ...