Мы пытаемся автоматизировать процесс обновления компонентов с Windows 10 1607 до 1703. WSUS используется для распространения пакета обновления.

Когда обновление установлено (с помощью gpo или comobject Microsoft.Update.Сеанс), состояние в настройках обновлений Windows: «Для завершения установки следующих обновлений требуется перезагрузка: обновление функции до Windows 10 enterprise, версия 1703». Под сообщением я вижу кнопку «Перезагрузить сейчас».

Так как я пытаюсь автоматизировать процесс, мне нужно будет перезагрузить компьютер, используя не графический интерфейс пользователя, то есть запустить restart-computer, wmi или каким-либо другим способом. Когда компьютер перезагружается, обновление не устанавливается. Я также попробовал usoClient RestartDevice без успеха.

Обновление происходит только при использовании кнопки «Перезагрузить сейчас». Как заставить Windows выполнить фактическую установку во время перезагрузки без использования графического интерфейса настройки обновлений Windows? Конечно, «Перезагрузка» - это перезагрузка, каким бы способом она не выполнялась?

2 ответа2

2

Это работает для меня, делая автоматические обновления до 1709 через PowerShell / ComObject Microsoft.Update.Установщик. Я опустил код загрузки, так как он не имеет отношения к этому вопросу.

if ($DownloadComplete) {

    Write-Output "Staging the upgrade.."
    $Installer = New-Object -ComObject Microsoft.Update.Installer
    $Installer.Updates = $Collection
    $InstallResult = $Installer.Install()
}            

if ($InstallResult.HResult -eq 0 -and $InstallResult.ResultCode -eq 2 -and $InstallResult.RebootRequired) {

    Write-Output "Staging complete. Finalising the upgrade.."
    Start-Process -FilePath 'C:\$WINDOWS.~BT\Sources\SetupHost.exe' -WorkingDirectory 'C:\$WINDOWS.~BT\Sources' -ArgumentList '/finalize /update'
}
0

Я имел дело с этой же проблемой. Кажется, что существует огромная нехватка знаний, когда дело доходит до попыток автоматизировать эти обновления функций. Мой сервер WSUS выдвигает обновления функций, но у меня есть много компьютеров, которые никогда не заканчивают процесс перезапуска, необходимый для его фактической установки.

Обычный перезапуск не инициирует установку, только нажав перезапустить на панели управления Центра обновления Windows или щелкнув обновление и перезапустить / обновить и завершить работу в меню «Пуск». Ни один из которых я не могу найти эквивалент командной строки / powershell для.

Единственная вещь, с которой я столкнулся, - это кто-то, кто упомянул именно эту проблему и сказал, что они использовали следующую команду, чтобы "завершить" установку.

C:\$WINDOWS.~BT\Sources\SetupHost.Exe /Finalize /Update /InstallFile "C:\$WINDOWS.~BT\Sources\Install.esd"

До сих пор я не мог заставить его работать, но, возможно, кому-то еще повезет, и он поможет остальным из нас заставить его работать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .