Я пытаюсь установить исправление для Windows на несколько компьютеров в нашей сети, используя PowerShell v3. Я скачал соответствующий .msu
файл и смог успешно установить его с локальной машины в командной строке, используя:
wusa c:\temp\hotfixname.msu /quiet /norestart
Проблема возникает, когда я пытаюсь запустить его из powershell. Мы можем предположить, что msu уже есть у всех на компьютере c:\temp\hotfixname.msu
и что PSRemoting уже включен. Вот что у меня более или менее:
import-module ActiveDirectory
$AllPCs = Get-ADComputer -SearchBase "Appropriate OU Here" -filter *
$AllPCs | Foreach {
Invoke-Command -ComputerName "$($_.name)" -AsJob -ScriptBlock {
if (!(Get-HotFix -id hotfixkb)) { CMD /C "wusa.exe c:\temp\hotfixname.msu /quiet /norestart" }
}
}
При запуске таким образом из моего собственного окна администратора, запускающего powershell от имени администратора, локальный компьютер на секунду или около того открывает процесс wusa.exe
, прежде чем он исчезает. Ничего не установлено.
Я могу запустить CMD /C "wusa.exe /?
, И он открывает процесс (зависает, но только потому, что wusa
открывает свою помощь в графическом интерфейсе).
У меня нет идей - есть у кого-нибудь совет по этому поводу? Я что-то упускаю?