Ich versuche, .NET Framework4.6.1 remote auf einer großen Gruppe von Computern zu installieren. Ich verwende Powershell, um dies aus der Ferne zu skripten. Das Problem ist, dass die EXE-Datei aus irgendeinem Grund nicht remote aufgerufen werden möchte. Ich gehe davon aus, dass dies auf die Tatsache zurückzuführen ist, dass die EXE-Datei für das Upgrade eine UI-Sitzung startet. Selbst wenn der Parameter "/ q" übergeben wird, mit dem die Installation remote erfolgen soll, funktioniert dies immer noch nicht. Ich erhalte keine Fehler, und wenn RDP in den betreffenden Computer eingespeist wird, scheint es nicht zu aktualisieren oder eine CPU für das Upgrade zu verwenden.
Mein Skript:
Write-Host "Executing 'Upgrade dotnet 4.6' for $server"
Invoke-Command -ComputerName $servers -Credential $credentials -ScriptBlock {
$Url = 'https://download.microsoft.com/download/E/4/1/E4173890-A24A-4936-9FC9-AF930FE3FA40/NDP461-KB3102436-x86-x64-AllOS-ENU.exe'
$Exe = "net461.exe"
$Dest = "C:\\" + $Exe
$Params = " /q"
$client = new-object System.Net.WebClient
$client.DownloadFile($Url,$Dest)
Invoke-Expression ("cmd.exe /C " + $Dest + $Params)
}
Ich habe auch versucht, schokoladig zu verwenden, und es funktioniert auch nicht, aus den gleichen Gründen. Laufen schokoladig vor Ort funktioniert.