Como saber quando o Windows Update terminou

1

No Windows 10 Home, as opções para o Windows Update são limitadas. Eu gostaria de impedi-lo de iniciar e fazer com que o usuário o inicie quando estiverem prontos. O motivo é que ele começa com muita freqüência, demorando demais e consome a bateria, e o usuário não fica feliz.

Posso desativar o serviço Windows Update e configurar um lembrete para o usuário iniciar um script para reativá-lo e iniciá-lo. Mas como posso saber quando o Windows Update foi concluído para que eu possa desativar novamente o serviço novamente?

Esta pergunta não ajuda ...

como-detectar-rapidamente-que-windows-update-está-rodando-agora-no-meu-pc

    
por Dude named Ben 25.04.2016 / 09:46

2 respostas

1

Eu sugiro que você use a ferramenta chamada Windows Update MiniTool que permite pesquisar atualiza e também seleciona quais atualizações você gostaria de instalar e permite bloquear atualizações como nas antigas versões do Windows.

An alternative to the standard Windows Update What you can do:
Check for updates
• Download updates
• Installing Updates
• Deleting installed updates
• Hiding unwanted updates
• Get direct links to the *.cab / *.Exe / *.Psf update files • View update history
• Configure Automatic Updates
• This tool is like the external powershell module PSWindowsUpdate, but much more advanced and user-friendly features
• The tool relies and use same WU infrastructure, all downloading are through WU it's not a downloader

    
por 25.04.2016 / 17:30
1

Talvez você possa agendar um script do PowerShell com o Agendador de tarefas para verificar todas as quartas-feiras o histórico do cliente do Windows Update.

Eu coloquei um script rápido que verifica se todas as atualizações aplicadas no último dia foram bem-sucedidas.

$Session = New-Object -ComObject "Microsoft.Update.Session"

$Searcher = $Session.CreateUpdateSearcher()
$yesterday = (Get-Date).Addmonths(-5)

$historyCount = $Searcher.GetTotalHistoryCount()



$Searcher = $Searcher.QueryHistory(0, $historyCount) | Where-object {$_.Date -gt $yesterday} |Select-Object Title, Date,

    @{name="Result"; expression={switch($_.ResultCode){

       0{"NotStarted"}; 1 {"InProgress"}; 2 {"Succeeded"}; 3 {"SucceededWithErrors"}; 4 {"Failed"}; 5{"Aborted"}

}}} 


if ($Searcher -eq $null){

Write-Host "Updates not found."
break

}

#Checks for whether all updates installed correctly.
if ($Searcher.Result -eq "Succeeded"){

Write-Host "Everything installed."

#Stops windows service
Stop-Service -Name wuauserv -Force
Get-service  -Name wuauserv 


}
elseif ($Searcher.Result -eq "InProgress"){

Write-Host "Updates are still been applied."
}
else {


Write-Host "Updates are in error status"
$Searcher 
}

NOTA:

O crédito vai para Kurt Hudson e Peter Gleelen, no Fórum Microsoft TechNet, por postar Como listar todas as atualizações do Windows e do software aplicadas a um computador .

    
por 26.04.2016 / 18:50