上次修改日期:2021年6月22日
發佈日期:2021年4月26日
為什麼Microsoft終止對 .NET Framework 4.5.2、4.6 和 4.6.1 的支援?
.NET Framework 先前使用使用安全哈希演算法 (SHA-1) 的憑證進行數字簽署。 SHA1- 是不再視為安全的舊版密碼編譯哈希演算法。 我們即將淘汰使用使用 SHA1 數位證書簽署的內容,以支援不斷演進的業界標準。
在查看不同版本 .NET Framework 的下載與使用狀況數據后,我們發現更新 .NET Framework 4.6.2 和更新版本以支援較新的數位證書 (,安裝程式) 將能滿足絕大部分的使用者 (98%) 使用者,而不需要進行變更。 使用 .NET Framework 4.5.2、4.6 或 4.6.1 的一小組用戶必須升級至之後的 .NET Framework 版本,才能繼續享有支援。 應用程式不需要重新編譯。 基於此變更的性質,我們決定將 .NET Framework 4.6.2 和更新版本作為支援與投入的最佳平衡。
如需詳細資訊,請參閱淘汰 SHA-1相關支援 文章。
如何? 知道我是否已安裝這些版本?
我仍在使用這些版本,我該怎麼辦?
如果您使用的是 .NET Framework 4.5.2、4.6 或 4.6.1,您將需要移至較新的運行時間版本,至少 .NET Framework 4.6.2,最好是 .NET Framework 4.8。 請注意,您只需要在應用程式執行的頂端更新已部署的運行時間。 不預期您會重建應用程式以將新版本重新設定為目標。
我將應用程式部署到 Azure App 服務,我需要執行任何動作嗎?
.NET Framework 4.8 已部署在 Azure App 服務 中,因此如果您在 Azure App 服務 中執行 Web App 或 Azure 函數,則不需要採取任何動作,表示您已經在使用最新的 4.8 版。
我在 Azure 中使用虛擬機,我是否需要執行任何動作?
我們正與我們的合作夥伴小組合作,確保至少未隨附 4.6.2 之作系統系列的來賓 VM 影像已更新為包含此功能,並預計在 2022 年 4 月停止支援 4.5.2、4.6 和 4.6.1 之前提供此功能。 在 2022 年 4 月之前,您可以繼續使用 .NET Framework 4.5.2、4.6 和 4.6.1,並受到完整支援。 不過,如果您想要在新的運行時間版本上立即開始驗證應用程式功能,您可以使用此指導方針在 Azure 雲端服務 上安裝 .NET Framework。
我的應用程式部署在使用 Windows Server Update Services (WSUS) 或 System Center 管理的企業環境中,Configuration Manager (SCCM) ,我該怎麼辦?
最新的 .NET Framework 運行時間 - 4.8 適用於 Windows Update、Windows Server Update Services (WSUS) ,以及適用於用戶端作系統和 WSUS 及適用於伺服器作系統的 MICROSOFT Update (MU) Catalog。
我可使用哪些資源來協助解決此問題?
以下是一些您可能會覺得實用的資源:
Windows Embedded 8 是否支援 .NET Framework 4.5.2、4.6 或 4.6.1?
.NET Framework 4.5.2、4.6 和 4.6.1 將於 2022 年 4 月 26 日終止支援,包括在 Windows Embedded 8 上使用此功能的客戶。 使用這些 .NET Framework 版本的客戶應該計劃移至較新的運行時間版本,至少 .NET Framework 4.6.2,最好是 .NET Framework 4.8。
我在 2008 年 Windows Server 使用 .NET Framework 4.5.2、4.6 或 4.6.1。 我該怎麼做?
先前 .NET Framework 4.6.1 和舊版支援 Windows Server 2008,但 .NET Framework 4.6.2 和更新版本則不支援。 在此終止支援更新 .NET Framework 4.6.2 已更新為包含 Windows Server 2008 做為支持的平臺。 在 Windows Server 2008 上使用 .NET Framework 4.5.2、4.6 或 4.6.1 的客戶應該會計劃移至 .NET Framework 4.6.2。
注意:較新版本的 .NET Framework 4.7 及更新版本不支援 Windows Server 2008。
我使用的是 .NET Framework 4.6 隨附的 Windows 10 2015 LTSC。 我該怎麼做?
Windows 10 企業版 LTSC 2015 隨附於作系統內建的 .NET Framework 4.6。 此作系統版本是 LTSC) 版本 (長期維護通道。 我們會在 Windows 10 企業版 LTSC 2015 繼續支援 .NET Framework 4.6,直到 OS 版本支援終止為止 (2025 年 10 月)。
.NET Framework 4.5.2 中是否有任何重大變更? 您為何納入這些變更?
.NET Framework 4.5.2 中與舊版 .NET Framework 版本不完全相容的變更數量極少數。 我們稱這些運行時間變更。 為了符合業界標準,或為了修正 .NET Framework 中的先前不相容性,我們只會在絕對必要時納入這些變更。 此外,.NET Framework 4.5.2 中包含少數變更,只有在您選擇針對 .NET Framework 4.5.2 重新編譯應用程式時才會啟用;我們將這些變更稱為重新設定目標變更。
如需應用程式相容性的詳細資訊,包括 .NET 運行時間,以及 .NET Framework 4.x 系列中不同版本的複位目標變更,請參閱這裡。
我需要重新編譯/重建我的應用程式,才能使用 .NET Framework 4.6.2 和更新版本嗎?
.NET Framework 4.6.2 和更新版本是舊版 .NET Framework 4.x 版本的相容就地更新,包括 4.5.2、4.6 和 4.6.1。 這表示,我們預期建置於舊版 .NET Framework 4.x 的應用程式會繼續在 .NET Framework 4.6.2 和更新版本上執行,且不會變更。 不需要針對這些版本重新編譯應用程式,您只需要更新運行時間版本。 建議您在部署到生產之前,先在較新的 .NET Framework 運行時間版本上測試應用程式功能。
我使用 ClickOnce 或 Visual Studio 安裝程式 Project 來部署 .NET Framework 4.6.2 或更新版本做為應用程式的先決條件,我該怎麼做?
已重建 .NET Framework 4.6.2 及更新版本的安裝程式,因此如果您使用啟動載入器來部署 .NET Framework 4.6.2 或更新版本做為您應用程式的先決條件,您必須更新 Product.xml 中的 PublicKey 屬性並 Package.xml 檔案,才能讓 ClickOnce 啟動載入器正確偵測更新的 .NET 安裝程式套件。
Product.xml 用於英文產品,且位於啟動載入器版本的根目錄。 例如,在 .NET Framework 4.6.2 的情況下,此檔案會位於 %ProgramFiles (x86) %\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX462\。
您也會在地區設定特定資料夾底下找到多個 Package.xml 檔案,這些檔案是用來在應用程式中部署 .NET Framework 語言套件。
您必須將 Package/PackageFiles/PackageFile 元素的 PublicKey 屬性值更新為此值:
3082010a0282010100b6bb19591000a3a9f1e4b85ca80b07cbdb9a1f23d0d958ab78c048f7241438f063edd54b03bfcdf809ca1450f327b3fe82b4fa1a4384e1cbf91b38e83fcc9027ac97a2310a917b62ec75bfcd488da05d75fd95a775ff23d40ce5e8e063703e35ead49662f87655f756d4afa663cde3e3d60f9b7a9b2a77f1c2d5749c8f47d3dda0312d1ca4252cc4c4406653d792cae3b052eabe0ab8ae750b5618c74953ae74bff2a6cdf338e98ea5a3f3029e7a6fcf7cc42fb3cc754770aa3fe7621186dd45482f15fbb4074c6f3ecb37ee96388a53d40e35af06a83959effbc51af781f0863666bb54bbdf2795ed1659371a2111e8098bd618b2c5daed465452408203e2a70203010001
請注意,Product.xml 中有兩個 /Package/PackageFiles/PackageFile 元素實例,以及每個 Package.xml 檔案中的一個實例。 所有實例都必須以正確的 PublicKey 更新。如需詳細資訊,請參閱建立 啟動載入器套件 一文。
如果您使用另一個啟動載入器,例如WiX啟動載入器 (燒錄) 請參閱刻錄檔以安裝 .NET Framework 先決條件以取得詳細資訊。
我使用 .NET Framework 3.5 SP1 – 我可以繼續使用這個功能嗎?
.NET Framework 3.5 SP1 的支援周期沒有變更。 如需 .NET Framework 3.5 的特定終止支持資訊,請參閱此網站。
我的應用程式會轉散發未來不支援的 .NET Framework 安裝程式版本。 我該怎麼做?
您應該規劃將支援的 .NET 運行時間安裝程式 (4.6.2 或更新版本) ,並針對您的應用程式安裝下一個規劃的更新。 如果您的應用程式環境中的使用者收到來自 Windows Update的更新,那麼他們的計算機很可能已經在 .NET Framework 4.8 上執行您的應用程式,因為 .NET Framework 4.8 已透過 Windows Update 廣泛部署。 如果您的應用程式是在 Windows Update 遭到封鎖或無法使用的環境中使用,那麼如果您的應用程式安裝程式不為他們部署 .NET Framework 4.6.2 或更新版本,您應用程式的使用者可能需要自行部署。
我使用相依 .NET Framework Exchange Server、SQL Server 或 Sharepoint 等Microsoft產品。 我需要更新這些產品嗎?
Exchange、SQL Server、SharePoint 等較新版本的產品是以 .NET Framework 4.6.2 或更新版本為基礎。 .NET Framework 4.6.2 和更新版本是舊版 .NET Framework 4.x 版本的相容就地更新。 這表示,當 .NET 運行時間從 .NET Framework 4.5.2、4.6 或 4.6.1 更新至較新版本時,在 .NET Framework 4.5.2、4.6 或 4.6.1 執行的舊版應用程式會繼續執行,不會有任何變更。 不過,我們建議您先在生產階段前環境中將 .NET 運行時間更新為 .NET Framework 4.6.2 或更新版本,然後再於生產環境中推出較新版本,藉此驗證您的部署。
我使用其他軟體廠商的產品,該軟體廠商安裝 .NET Framework 4.5.2、4.6 或 4.6.1。 我該怎麼做?
如果您的電腦收到來自 Windows Update 的更新,那麼您的電腦很可能已經在 .NET Framework 4.8 上執行應用程式,因為 .NET Framework 4.8 已透過 Windows Update 廣泛部署。 如果應用程式是在 Windows Update 遭到封鎖或無法使用的環境中使用,您應該連絡您的應用程式廠商,以及部署 .NET Framework 4.6.2 或更新版本的應用程式更新版本。
.NET Framework 的支援周期原則為何?
請參閱此網站,瞭解每個版本 .NET Framework 的特定終止支援日期。
這會影響 .NET Core 和 .NET 5 或更新版本嗎?
否。 公告的範圍是 .NET Framework 4.5.2、4.6 和 4.6.1。 .NET Core 和 .NET 5 的支援周期沒有變更。