Ich habe Probleme mit meinem Skript, das eine ausführbare Datei remote installieren soll. Alle vorbereitenden Aktionen meines Skripts funktionieren einwandfrei. Ich schnappe mir die Hostnamen von etwa einem Dutzend Computern aus einer Textdatei. Ich verwende PSExec, um PSRemoting zu aktivieren. Dann wird das Installationsprogramm in ein temporäres Verzeichnis auf dem Remote-Computer kopiert. Alles funktioniert gut, bis auf den wichtigen Teil. Ich kann es einfach nicht installieren.PowerShell: Remote exe Installation
Ich habe versucht, die folgenden:
Invoke-Command -ComputerName remoteComp -ScriptBlock {C:\temp\installer.exe} -ArgumentList /SILENT
Invoke-Command -ComputerName remoteComp {Start-Process C:\temp\installer.exe -ArgumentList /SILENT -Wait}
Ich habe versucht, mit New-PSSession wie folgt aus:
$s = New-PSSession -ComputerName remoteComp
Invoke-Command -Session $s -ScriptBlock {C:\temp\installer.exe} -ArgumentList /SILENT
senden Keine irgendeine Art von Fehler, sie tun einfach nichts. Befehle, die haben -Warten Sie einfach für immer hängen. Wenn ich ein -Sleep setze, wartet es nur die angeforderten Sekunden und endet dann, ohne etwas zu erreichen. Ich weiß nicht, ob das wichtig ist, aber wenn ich die ausführbare Datei auf dem lokalen Computer mit der Option/SILENT ausführe, werden keine Eingabeaufforderungen angefordert, aber es wird ein Explorer-Fenster geöffnet.
Ich habe versucht, PSExec.exe zu verwenden, aber ich bekomme ein ähnliches Ergebnis. Es bleibt einfach für immer ohne Fehler. Vielen Dank im Voraus für jede Hilfe!
Ich habe dies auf verschiedenen Installern versucht, einige arbeiten je nach UAC-Ebene. Ich habe dann etwas geschrieben, um die Erstellung einer geplanten Aufgabe auf einem Zielrechner auszuführen, auf dem eine Batch-Datei mit allen meinen Befehlen für die unbeaufsichtigte Installation ausgeführt wird. 'SCHTASKS' – ssaviers
in den Skriptblockbeispielen haben Sie Ihren Parameter nicht an Ihre exe übergeben. '-ScriptBlock {C: \ temp \ installer.exe $ args [0]} -ArgumentList/SILENT', obwohl möglicherweise mehr los ist. Das würde erklären, warum es für immer so weitergeht, weil es mit keinem Benutzer interagieren kann. Es gibt freie Software, die mit solchen Dingen wie PDQ Deploy umgehen kann, anstatt zu versuchen, ein eigenes fyi zu erstellen. – Matt
Das erscheinende Explorer-Fenster kann dazu führen, dass der Installationsprozess nicht beendet wird, was erklären würde, warum bei Verwendung von "-Wait" dieser niemals endet. Sie können dies auf einem lokalen Computer testen ... Öffnen Sie den Task-Manager und führen Sie das Installationsprogramm mit dem Schalter "silent" aus, um den Prozess "installer.exe" im Task-Manager zu finden. Wenn das Installationsprogramm ein Explorer-Fenster öffnet, verschwindet der 'installer.exe' Prozess? –