Uma actualização para o Microsoft .NET Framework 4 pode não ser instalada caso se verifiquem as seguintes condições:
-
Instalou anteriormente o Microsoft .NET Framework 4 ou o Microsoft .NET Framework 4 Client Profile.
-
Existe um reinício de sistema pendente que não foi concluído antes de instalar a nova actualização.
Nota: se instalar a actualização através do site Windows Update, poderá parecer que a actualização foi disponibilizada e instalada. Contudo, após reiniciar o computador, a mesma actualização é novamente disponibilizada.
Sintomas
Este problema ocorre porque, quando o Microsoft .NET Framework 4 é instalado, existem determinados componentes bloqueados ou em uso até que o sistema seja reiniciado. Estes componentes não podem ser actualizados enquanto o sistema não for reiniciado. Devido a este facto, no cenário descrito na secção Sintomas, a versão do shim (mscoree.dll) corresponde à versão 3.5 SP1 ou anterior do Microsoft .NET Framework. A instalação do Microsoft .NET Framework 4 implementa determinadas definições que impedem o correcto funcionamento do shim antigo até que este seja actualizado após o reinício do sistema. Neste cenário, se tentar instalar outra actualização para o Microsoft .NET Framework com o reinício pendente, a actualização tentará utilizar uma implementação Global Assembly Cache (GAC) para os ficheiros da actualização. Esta operação GAC requer o shim. Contudo, dado que o shim se encontra num estado inconsistente pendente de reinício, a operação GAC falhará. Isto impede que a actualização tenha êxito.
Causa
Para evitar este problema, reinicie o sistema antes de instalar as novas actualizações para o Microsoft .NET Framework. Se já tiver verificado a condição e este problema tiver impedido a instalação de uma actualização, reinicie o computador e reinstale as novas actualizações.
Como contornar
A Microsoft confirmou que este problema ocorre nos produtos da Microsoft listados na secção "Aplica-se a".