API “Microsoft.Update.Session” - descubra se uma atualização causa uma reinicialização

1

Eu sei que, se você passar pelas atualizações pendentes, haverá um sinalizador (reinicializado ou semelhante) que informará se uma reinicialização é obrigatória, não é necessária ou pode ser necessária. Parece que nos metadados de muitas atualizações, isso é marcado como "talvez, não tenho certeza", portanto, não há uma maneira segura de saber se uma atualização causará uma reinicialização.

Dada a API Microsoft.Update.Session, existe uma maneira de verificar o conteúdo da atualização para ver se o próprio código alterará a configuração do registro HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired para que o Windows saiba que precisa ser reinicializado?

Estou assumindo que, embora os metadados sejam "talvez", há algo em cada atualização que força esse sinalizador de registro a "Ping! Preciso reiniciar"

Ou isso, ou existe uma maneira mais confiável de descobrir como verificar quais atualizações exigem a reinicialização?

    
por glasnt 23.12.2011 / 00:59

1 resposta

2

A razão que diz "talvez" é porque realmente depende e é única de situação para situação.

O Windows Installer pode solicitar uma reinicialização se ele for instalado sobre um arquivo em uso ou o pacote solicitar explicitamente que o instalador seja reinicializado. É fácil determinar se o Windows Installer solicita uma reinicialização porque ele foi instalado em um arquivo em uso. O primeiro passo é gerar um arquivo de log detalhado. No arquivo de log detalhado, procure a presença da propriedade ReplacedInUseFiles no despejo de propriedade. Se esta propriedade estiver presente com um valor de 1, o instalador exigirá uma reinicialização porque ele substituiu um arquivo em uso.

    
por 23.12.2011 / 01:24