Última Modificação: 22 de junho de 2021
Data de Publicação: 26 de abril de 2021
Porque é que a Microsoft está a terminar o suporte para .NET Framework 4.5.2, 4.6 e 4.6.1?
O .NET Framework foi assinado anteriormente digitalmente com certificados que utilizam o Algoritmo Hash Seguro (SHA-1). SHA1- é um algoritmo de hash criptográfico legado que já não é considerado seguro. Estamos a descontinuar conteúdos assinados com certificados digitais que utilizaram SHA1 para suportar normas da indústria em evolução.
Depois de analisarmos os dados de transferência e utilização nas diferentes versões do .NET Framework, descobrimos que atualizar .NET Framework 4.6.2 e versões mais recentes para suportar certificados digitais mais recentes (para os instaladores) satisfaria a grande maioria (98%) dos utilizadores sem que precisassem de fazer uma alteração. O pequeno conjunto de utilizadores que utilizam .NET Framework 4.5.2, 4.6 ou 4.6.1 terá de atualizar para uma versão .NET Framework posterior para se manter suportado. As aplicações não precisam de ser recompiladas. Dada a natureza desta mudança, decidimos que visar .NET Framework 4.6.2 e posterior era o melhor equilíbrio de apoio e esforço.
Veja este artigo de suporte sobre a extinção de conteúdos SHA-1 para obter mais informações.
Como devo proceder para saber se tenho estas versões instaladas?
Veja o artigo sobre Determinar que versões .NET Framework estão instaladas.
Ainda estou a utilizar estas versões, o que devo fazer?
Se estiver a utilizar o .NET Framework 4.5.2, 4.6 ou 4.6.1, terá de avançar para uma versão de runtime mais recente, pelo menos .NET Framework 4.6.2 e, de preferência, .NET Framework 4.8. Tenha em atenção que só precisa de atualizar o runtime implementado sobre o qual as suas aplicações são executadas. Não existe nenhuma expectativa de que recrie a sua aplicação para voltar a obter a versão mais recente.
Implemento a minha aplicação para Serviço de Aplicações do Azure, preciso de fazer alguma coisa?
.NET Framework 4.8 já está implementado no Serviço de Aplicações do Azure por isso, se estiver a executar a aplicação Web ou a função do Azure no Serviço de Aplicações do Azure não precisa de fazer nada, já está a utilizar a versão 4.8 mais recente.
Utilizo uma Máquina Virtual no Azure. Preciso de fazer alguma coisa?
Estamos a trabalhar com as nossas equipas parceiras para garantir que as imagens de VMs convidadas para famílias de SO que não foram enviadas com pelo menos 4.6.2 estão atualizadas para o incluir e esperamos que esta esteja disponível antes de abril de 2022, quando deixarmos de suportar 4.5.2, 4.6 e 4.6.1. Antes de abril de 2022, pode continuar a utilizar .NET Framework 4.5.2, 4.6 e 4.6.1 e será totalmente suportado. Dito isto, se quiser começar a validar a funcionalidade da aplicação na versão de runtime mais recente imediatamente, pode utilizar esta documentação de orientação para Instalar .NET Framework no Azure Serviços Cloud.
A minha aplicação é implementada num ambiente empresarial gerido com Windows Server Update Services (WSUS) ou Configuration Manager do System Center (SCCM), o que devo fazer?
O runtime de .NET Framework mais recente – 4.8 está disponível no Windows Update, Windows Server Update Services (WSUS) e no Catálogo Microsoft Update (MU) para sistemas operativos cliente e Catálogo WSUS e MU para sistemas operativos servidor.
Que recursos estão disponíveis para o ajudar?
Eis alguns recursos que poderá considerar úteis:
O .NET Framework 4.5.2, 4.6 ou 4.6.1 será suportado no Windows Embedded 8?
.NET Framework 4.5.2, 4.6 e 4.6.1 chegarão ao fim do suporte a 26 de abril de 2022, incluindo para os clientes que o utilizam no Windows Embedded 8. Os clientes que utilizam estas versões .NET Framework devem planear avançar para uma versão de runtime mais recente, pelo menos .NET Framework 4.6.2 e, de preferência, .NET Framework 4.8.
Utilizo .NET Framework 4.5.2, 4.6 ou 4.6.1 no Windows Server 2008. O que devo fazer?
Anteriormente .NET Framework 4.6.1 e versões anteriores suportavam Windows Server 2008, mas .NET Framework 4.6.2 e versões posteriores não. Como parte desta atualização de fim do suporte, o .NET Framework 4.6.2 foi atualizado para incluir Windows Server 2008 como uma plataforma suportada. Os clientes que utilizam .NET Framework 4.5.2, 4.6 ou 4.6.1 no Windows Server 2008 devem planear avançar para .NET Framework 4.6.2.
Nota: as versões mais recentes do .NET Framework 4.7 e posteriores não suportam Windows Server 2008.
Estou a utilizar Windows 10 LTSC de 2015 que foi enviado com o .NET Framework 4.6. O que devo fazer?
Windows 10 Enterprise LTSC 2015 enviado com .NET Framework 4.6 incorporado no SO. Esta versão do SO é uma versão de canal de manutenção de longo prazo (LTSC). Continuaremos a suportar o .NET Framework 4.6 no Windows 10 Enterprise LTSC 2015 até ao fim do suporte da versão do SO (outubro de 2025).
Existem quaisquer alterações significativas no .NET Framework 4.5.2? Por que incluem estas alterações?
Existe um número muito pequeno de alterações no .NET Framework 4.5.2 que não são totalmente compatíveis com versões .NET Framework anteriores. Chamamos a estas alterações de runtime. Só incluímos estas alterações quando for absolutamente necessário no que diz respeito à segurança, para cumprir as normas de toda a indústria ou para corrigir uma incompatibilidade anterior no .NET Framework. Além disso, existe um pequeno número de alterações incluídas no .NET Framework 4.5.2 que só serão ativadas se optar por recompilar a sua aplicação com o .NET Framework 4.5.2; chamamos a estas alterações alterações de novo destino.
Pode encontrar mais informações sobre a compatibilidade de aplicações, incluindo o runtime do .NET e a reativação de alterações nas várias versões do .NET Framework família 4.x aqui.
Terei de recompilar/reconstruir as minhas aplicações para utilizar .NET Framework 4.6.2 e versões posteriores?
.NET Framework versões 4.6.2 e posteriores são atualizações no local compatíveis com as versões anteriores .NET Framework 4.x, incluindo 4.5.2, 4.6 e 4.6.1. Isto significa que esperamos que as aplicações criadas em versões anteriores do .NET Framework 4.x continuem a ser executadas no .NET Framework 4.6.2 e versões posteriores sem alterações. A recompilação de aplicações para direcionar estas versões não é necessária, apenas tem de atualizar a versão do runtime. Recomendamos que teste a funcionalidade da aplicação na versão de runtime mais recente .NET Framework antes de implementar na produção.
Utilizo o ClickOnce ou um Projeto do Instalador do Visual Studio para implementar o .NET Framework 4.6.2 ou posterior como pré-requisito para a minha aplicação, o que devo fazer?
Os instaladores do .NET Framework 4.6.2 e superior foram reconstruídos, pelo que se utilizar um bootstrapper para implementar o .NET Framework 4.6.2 ou posterior como um pré-requisito com a sua aplicação, terá de atualizar o atributo PublicKey no Product.xml e Package.xml ficheiros para que o bootstrapper ClickOnce detete corretamente os pacotes de instalação .NET atualizados.
Product.xml é utilizado para produtos em inglês e reside na raiz do lançamento do bootstrapper. Por exemplo, no caso do .NET Framework 4.6.2, este ficheiro estaria em %ProgramFiles(x86)%\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX462\.
Também encontrará vários ficheiros Package.xml em pastas específicas da região. Estes ficheiros são utilizados para implementar .NET Framework pacotes de idiomas com a sua aplicação.
Tem de atualizar o valor do atributo PublicKey do elemento Package/PackageFiles/PackageFile para este valor:
3082010a0282010100b6bb19591000a3a9f1e4b85ca80b07cbdb9a1f23d0d958ab78c048f7241438f063edd54b03bfcdf809ca1450f327b3fe82b4fa1a4384e1cbf91b38e83fcc9027ac97a2310a917b62ec75bfcd488da05d75fd95a775ff23d40ce5e8e063703e35ead49662f87655f756d4afa663cde3e3d60f9b7a9b2a77f1c2d5749c8f47d3dda0312d1ca4252cc4c4406653d792cae3b052eabe0ab8ae750b5618c74953ae74bff2a6cdf338e98ea5a3f3029e7a6fcf7cc42fb3cc754770aa3fe7621186dd45482f15fbb4074c6f3ecb37ee96388a53d40e35af06a83959effbc51af781f0863666bb54bbdf2795ed1659371a2111e8098bd618b2c5daed465452408203e2a70203010001
Tenha em atenção que existem duas instâncias do elemento //Package/PackageFiles/PackageFile no Product.xml e uma em cada um dos Package.xml ficheiro. Todas as instâncias têm de ser atualizadas com a Chave Pública correta.Consulte este artigo para obter mais informações sobre como Criar pacotes bootstrapper .
Se utilizar outro bootstrapper como o WiX Bootstrapper (Burn), consulte a documentação do Burn para instalar .NET Framework pré-requisitos para obter mais informações.
Utilizo .NET Framework 3,5 SP1 – posso continuar a utilizar isto?
Não existe nenhuma alteração ao ciclo de vida do suporte para .NET Framework 3,5 SP1. Consulte este site para obter informações específicas sobre o fim do suporte para .NET Framework 3.5.
A minha aplicação redistribui uma versão do instalador .NET Framework que não será suportada no futuro. O que devo fazer?
Deve planear enviar um instalador de runtime .NET suportado (4.6.2 ou posterior) com a próxima atualização planeada para a sua aplicação. Se a sua aplicação estiver num ambiente onde o utilizador final recebe atualizações de Windows Update, é provável que o computador já esteja a executar a aplicação no .NET Framework 4.8, uma vez que .NET Framework 4.8 foi amplamente implementado através de Windows Update. Se a sua aplicação for utilizada num ambiente onde Windows Update está bloqueada ou indisponível, o utilizador final da sua aplicação poderá ter de implementar .NET Framework 4.6.2 ou posterior se o instalador de aplicações não o fizer por eles próprios.
Utilizo um produto Microsoft como Exchange Server, SQL Server ou Sharepoint que dependem de .NET Framework. Preciso de fazer atualizações a estes produtos?
As versões mais recentes de produtos como o Exchange, SQL Server, SharePoint, etc. baseiam-se no .NET Framework 4.6.2 ou posterior. O .NET Framework 4.6.2 e versões posteriores são atualizações compatíveis e no local sobre as versões anteriores .NET Framework 4.x. Isto significa que uma versão mais antiga de uma aplicação em execução no .NET Framework 4.5.2, 4.6 ou 4.6.1 continuará a ser executada sem alterações quando o runtime do .NET for atualizado de .NET Framework 4.5.2, 4.6 ou 4.6.1 para versões posteriores. Dito isto, recomendamos que valide as suas implementações ao atualizar o runtime do .NET para .NET Framework 4.6.2 ou posterior num ambiente de pré-produção antes de implementar uma versão mais recente no ambiente de produção.
Utilizo um produto de outro fornecedor de software que instala .NET Framework 4.5.2, 4.6 ou 4.6.1. O que devo fazer?
Se o seu computador receber atualizações de Windows Update, é provável que o computador já esteja a executar a aplicação no .NET Framework 4.8, uma vez que o .NET Framework 4.8 foi implementado amplamente através de Windows Update. Se a aplicação for utilizada num ambiente onde Windows Update está bloqueada ou indisponível, deve contactar o fornecedor da aplicação e obter uma versão atualizada da aplicação que implementa .NET Framework 4.6.2 ou posterior.
Qual é a política de ciclo de vida do suporte para .NET Framework?
Consulte este site para obter as datas de fim de suporte específicas para cada versão do .NET Framework.
Isto afeta o .NET Core e o .NET 5 ou posterior?
Não. O anúncio tem como âmbito .NET Framework 4.5.2, 4.6 e 4.6.1. Não existe nenhuma alteração ao ciclo de vida do suporte para .NET Core e .NET 5.