Ostatnia modyfikacja: 22 czerwca 2021 r.
Data publikacji: 26 kwietnia 2021 r.
Dlaczego firma Microsoft kończy świadczenie pomocy technicznej dla programów .NET Framework 4.5.2, 4.6 i 4.6.1?
.NET Framework został wcześniej podpisany cyfrowo przy użyciu certyfikatów używających algorytmu bezpiecznego skrótu (SHA-1). SHA1- to starszy algorytm skrótów kryptograficznych, który nie jest już uważany za bezpieczny. Wycofujemy zawartość podpisaną przy użyciu certyfikatów cyfrowych, które używały sha1 do obsługi zmieniających się standardów branżowych.
Po przejrzeniu danych dotyczących pobierania i użycia w różnych wersjach .NET Framework okazało się, że zaktualizowanie wersji .NET Framework 4.6.2 i nowszych w celu obsługi nowszych certyfikatów cyfrowych (instalatorów) zadowoliłoby zdecydowaną większość (98%) użytkowników bez konieczności wprowadzania zmian. Aby zachować wsparcie techniczne, mały zestaw użytkowników korzystających .NET Framework 4.5.2, 4.6 lub 4.6.1 będzie musiał przeprowadzić uaktualnienie do nowszej wersji .NET Framework. Aplikacje nie muszą być ponownie skompilowane. Biorąc pod uwagę charakter tej zmiany, zdecydowaliśmy, że ukierunkowanie .NET Framework 4.6.2 i nowszych było najlepszą równowagą wsparcia i wysiłku.
Aby uzyskać więcej informacji, zobacz ten artykuł pomocy technicznej dotyczący wycofywania zawartości sha-1 .
Jak mogę wiedzieć, czy mam zainstalowane te wersje?
Zobacz artykuł Określanie, które wersje .NET Framework są zainstalowane.
Co mam zrobić, jeśli nadal korzystam z tych wersji?
Jeśli używasz .NET Framework 4.5.2, 4.6 lub 4.6.1, musisz przejść do nowszej wersji środowiska uruchomieniowego, co najmniej .NET Framework 4.6.2, a najlepiej .NET Framework 4.8. Pamiętaj, że musisz tylko zaktualizować wdrożone środowisko uruchomieniowe, oprócz tego, które aplikacje działają. Nie ma żadnych oczekiwań, że odbudujesz aplikację, aby przywrócić nowszą wersję.
Wdrażam aplikację w Azure App Service, czy muszę coś zrobić?
.NET Framework 4.8 jest już wdrożony w Azure App Service więc jeśli korzystasz z aplikacji sieci Web lub funkcji Platformy Azure w Azure App Service nie musisz nic robić, korzystasz już z najnowszej wersji 4.8.
Korzystam z maszyny wirtualnej na platformie Azure. Czy muszę coś zrobić?
Współpracujemy z naszymi zespołami partnerskimi, aby zapewnić, że obrazy maszyn wirtualnych gości dla rodzin systemów operacyjnych, które nie zostały wysłane z co najmniej 4.6.2, zostaną zaktualizowane w celu uwzględnienia tego i oczekują, że będą one dostępne przed kwietniem 2022 r., kiedy przestaniemy obsługiwać programy 4.5.2, 4.6 i 4.6.1. Przed kwietniem 2022 r. możesz nadal używać .NET Framework 4.5.2, 4.6 i 4.6.1 i będziesz w pełni obsługiwany. Jeśli jednak chcesz od razu rozpocząć sprawdzanie poprawności funkcji aplikacji w nowszej wersji środowiska uruchomieniowego, możesz skorzystać z tych wskazówek, aby zainstalować .NET Framework na platformie Azure Cloud Services.
Moja aplikacja jest wdrażana w środowisku przedsiębiorstwa zarządzanym za pomocą Windows Server Update Services (WSUS) lub System Center Configuration Manager (SCCM), co należy zrobić?
Najnowsze środowisko uruchomieniowe .NET Framework — 4.8 jest dostępne w systemach Windows Update, Windows Server Update Services (WSUS) oraz w wykazie usługi Microsoft Update (MU) dla klienckich systemów operacyjnych oraz wykazie usług WSUS i MU dla systemów operacyjnych server.
Jakie zasoby są dla mnie dostępne, aby w tym pomóc?
Oto niektóre zasoby, które mogą okazać się pomocne:
Czy .NET Framework 4.5.2, 4.6 lub 4.6.1 będą obsługiwane w systemie Windows Embedded 8?
.NET Framework 4.5.2, 4.6 i 4.6.1 osiągną koniec wsparcia technicznego 26 kwietnia 2022 r., w tym dla klientów korzystających z tej funkcji w systemie Windows Embedded 8. Klienci korzystający z tych wersji .NET Framework powinni planować przejście do nowszej wersji środowiska uruchomieniowego, co najmniej .NET Framework 4.6.2, a najlepiej .NET Framework 4.8.
W systemie Windows Server 2008 używam .NET Framework 4.5.2, 4.6 lub 4.6.1. Co mam zrobić?
Wcześniej .NET Framework 4.6.1 i wcześniejsze wersje obsługiwane Windows Server 2008, ale .NET Framework 4.6.2 i nowsze wersje nie. W ramach tego końca wsparcia technicznego aktualizacja .NET Framework 4.6.2 została zaktualizowana, aby uwzględnić Windows Server 2008 jako obsługiwaną platformę. Klienci korzystający z .NET Framework 4.5.2, 4.6 lub 4.6.1 w systemie Windows Server 2008 r. powinni planować przejście do .NET Framework 4.6.2.
Uwaga: nowsze wersje .NET Framework 4.7 i nowsze nie obsługują Windows Server 2008.
Używam Windows 10 2015 LTSC, który jest dostarczany z .NET Framework 4.6. Co mam zrobić?
Windows 10 Enterprise LTSC 2015 jest dostarczany z wbudowanymi systemami operacyjnymi .NET Framework 4.6. Ta wersja systemu operacyjnego jest wersją długoterminowego kanału obsługi (LTSC). Będziemy nadal obsługiwać system .NET Framework 4.6 w Windows 10 Enterprise LTSC 2015 do końca wsparcia technicznego wersji systemu operacyjnego (październik 2025 r.).
Czy program .NET Framework 4.5.2 zawiera jakieś przełomowe zmiany? Dlaczego je wprowadzono?
W systemie .NET Framework 4.5.2 występuje bardzo mała liczba zmian, które nie są w pełni zgodne ze starszymi wersjami .NET Framework. Nazywamy te zmiany w czasie wykonywania. Zmiany te uwzględniamy tylko wtedy, gdy jest to absolutnie konieczne w interesie bezpieczeństwa, w celu zapewnienia zgodności ze standardami obowiązującymi w całej branży lub w celu poprawienia wcześniejszej niezgodności w ramach .NET Framework. Ponadto w .NET Framework 4.5.2 uwzględniono niewielką liczbę zmian, które zostaną włączone tylko wtedy, gdy zdecydujesz się na ponowną kompilację aplikacji z .NET Framework 4.5.2; nazywamy te zmiany retargetowaniem zmian.
Więcej informacji na temat zgodności aplikacji, w tym zarówno środowiska uruchomieniowego .NET, jak i zmian retargetowania w różnych wersjach w rodzinie .NET Framework 4.x, można znaleźć tutaj.
Czy muszę ponownie skompilować moje aplikacje, aby używać wersji .NET Framework 4.6.2 i nowszych?
.NET Framework 4.6.2 i nowsze wersje są zgodne z aktualizacjami miejscowymi w stosunku do poprzednich wersji .NET Framework 4.x, w tym 4.5.2, 4.6 i 4.6.1. Oznacza to, że oczekujemy, że aplikacje utworzone w poprzednich wersjach .NET Framework 4.x będą nadal działać w systemie .NET Framework 4.6.2 i nowszych wersjach bez zmian. Ponowne skompilowanie aplikacji w celu kierowania tych wersji nie jest konieczne, wystarczy tylko zaktualizować wersję środowiska uruchomieniowego. Przed wdrożeniem w środowisku produkcyjnym zalecamy przetestowanie funkcji aplikacji w nowszej wersji .NET Framework środowiska wykonawczego.
Co mam zrobić, używając programu ClickOnce lub Instalator programu Visual Studio Project w celu wdrożenia .NET Framework 4.6.2 lub nowszego jako wymagania wstępnego dla mojej aplikacji?
Instalatory dla .NET Framework 4.6.2 i nowszych zostały przebudowane, więc jeśli użyjesz bootstrappera do wdrożenia .NET Framework 4.6.2 lub nowszego jako wymaganego wstępnie aplikacji, musisz zaktualizować atrybut PublicKey w Product.xml i plikach Package.xml, aby bootstrapper ClickOnce poprawnie wykrył zaktualizowane pakiety instalatora .NET.
Product.xml jest używany dla produktów w języku angielskim i mieszka w katalogu głównym wersji bootstrappera. Na przykład w przypadku .NET Framework 4.6.2 ten plik będzie w obszarze %ProgramFiles(x86)%\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX462\.
W folderach określonych ustawień regionalnych znajduje się również wiele plików Package.xml, które służą do wdrażania pakietów językowych .NET Framework w aplikacji.
Należy zaktualizować wartość atrybutu PublicKey dla elementu Package/PackageFiles/PackageFile do tej wartości:
3082010a0282010100b6bb19591000a3a9f1e4b85ca80b07cbdb9a1f23d0d958ab78c048f7241438f063edd54b03bfcdf809ca1450f327b3fe82b4fa1a4384e1cbf91b38e83fcc9027ac97a2310a917b62ec75bfcd488da05d75fd95a775ff23d40ce5e8e063703e35ead49662f87655f756d4afa663cde3e3d60f9b7a9b2a77f1c2d5749c8f47d3dda0312d1ca4252cc4c4406653d792cae3b052eabe0ab8ae750b5618c74953ae74bff2a6cdf338e98ea5a3f3029e7a6fcf7cc42fb3cc754770aa3fe7621186dd45482f15fbb4074c6f3ecb37ee96388a53d40e35af06a83959effbc51af781f0863666bb54bbdf2795ed1659371a2111e8098bd618b2c5daed465452408203e2a70203010001
Zwróć uwagę, że istnieją dwa wystąpienia elementu //Package/PackageFiles/PackageFile w Product.xml i po jednym w każdym z plików Package.xml. Wszystkie wystąpienia muszą zostać zaktualizowane za pomocą poprawnego klucza publicznego.Aby uzyskać więcej informacji na ten temat, zobacz ten artykuł dotyczący tworzenia pakietów bootstrappera .
Jeśli używasz innego bootstrappera, takiego jak WiX Bootstrapper (Burn), zapoznaj się z dokumentacją nagrywania w celu zainstalowania .NET Framework wymagań wstępnych, aby uzyskać więcej informacji.
Korzystam z .NET Framework 3.5 z dodatkiem SP1 — czy mogę nadal z tego korzystać?
Nie ma żadnych zmian w cyklu pomocy technicznej dla .NET Framework 3.5 z dodatkiem SP1. Zobacz tę witrynę, aby uzyskać szczegółowe informacje o zakończeniu świadczenia pomocy technicznej dla .NET Framework 3.5.
Moja aplikacja rozpowszechnia wersję instalatora .NET Framework, która w przyszłości nie będzie dostępna. Co mam zrobić?
Należy zaplanować wysyłkę obsługiwanego instalatora środowiska wykonawczego .NET (wersja 4.6.2 lub nowsza) z następną planowaną aktualizacją dla aplikacji. Jeśli aplikacja znajduje się w środowisku, w którym użytkownik końcowy otrzymuje aktualizacje z Windows Update, najprawdopodobniej jego komputer jest już uruchomiony w systemie .NET Framework 4.8, ponieważ .NET Framework 4.8 został wdrożony szeroko za pośrednictwem Windows Update. Jeśli aplikacja jest używana w środowisku, w którym Windows Update jest zablokowana lub niedostępna, może być konieczne samodzielne wdrożenie .NET Framework 4.6.2 lub nowszej przez użytkownika końcowego aplikacji, jeśli instalator aplikacji nie zrobi tego dla niego.
Korzystam z produktu firmy Microsoft, takiego jak Exchange Server, SQL Server lub Sharepoint, które zależą od .NET Framework. Czy muszę aktualizować te produkty?
Nowsze wersje produktów, takich jak Exchange, SQL Server, SharePoint itp., są oparte na .NET Framework 4.6.2 lub nowszym. Wersje .NET Framework 4.6.2 i nowsze są zgodne z aktualizacjami "w miejscu" w stosunku do poprzednich wersji .NET Framework 4.x. Oznacza to, że starsza wersja aplikacji działającej w systemie .NET Framework 4.5.2, 4.6 lub 4.6.1 będzie nadal działać bez żadnych zmian, gdy środowisko uruchomieniowe .NET zostanie zaktualizowane z wersji .NET Framework 4.5.2, 4.6 lub 4.6.1 do nowszych wersji. Zalecamy jednak sprawdzenie poprawności wdrożeń przez zaktualizowanie środowiska wykonawczego .NET do wersji .NET Framework 4.6.2 lub nowszej w środowisku przedprodukcyjnym przed wprowadzeniem nowszej wersji w środowisku produkcyjnym.
Używam produktu innego dostawcy oprogramowania, który instaluje .NET Framework 4.5.2, 4.6 lub 4.6.1. Co mam zrobić?
Jeśli komputer otrzymuje aktualizacje od Windows Update to najprawdopodobniej na komputerze jest już uruchomiona aplikacja w systemie .NET Framework 4.8, ponieważ .NET Framework 4.8 wdrożono szeroko za pośrednictwem Windows Update. Jeśli aplikacja jest używana w środowisku, w którym Windows Update jest zablokowana lub niedostępna, należy skontaktować się z dostawcą aplikacji i uzyskać zaktualizowaną wersję aplikacji, która wdraża .NET Framework 4.6.2 lub nowszą.
Jakie zasady cyklu pomocy technicznej obowiązują w przypadku .NET Framework?
Zobacz tę witrynę, aby zapoznać się z datami zakończenia świadczenia pomocy technicznej dla każdej wersji .NET Framework.
Czy ma to wpływ na oprogramowanie .NET Core i .NET 5 lub nowsze?
Nie. Ogłoszenie jest ograniczone do .NET Framework 4.5.2, 4.6 i 4.6.1. Nie ma żadnych zmian w cyklu pomocy technicznej dla programów .NET Core i .NET 5.