https://docs.microsoft.com/zh-cn/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed?redirectedfrom=MSDN
檢測 .NET Framework 4.5 及更高版本
計算機上安裝的 .NET Framework 版本(4.5 及更高版本)列出在注冊表中,位於 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full。 如果缺少 Full 子項,則未安裝 .NET Framework 4.5 或更高版本。
備注
注冊表路徑中的 .NET Framework Setup 子項不以句點開頭。
注冊表中的 Release REG_DWORD 值代表已安裝的 .NET Framework 版本。
.NET Framework 版本 | Release 的值 |
---|---|
.NET Framework 4.5 | 所有 Windows 操作系統:378389 |
.NET Framework 4.5.1 | 在 Windows 8.1 和 Windows Server 2012 R2 上:378675 在所有其他 Windows 操作系統上:378758 |
.NET Framework 4.5.2 | 所有 Windows 操作系統:379893 |
.NET Framework 4.6 | 在 Windows 10 上:393295 在所有其他 Windows 操作系統上:393297 |
.NET Framework 4.6.1 | 在 Windows 10 11 月更新系統上:394254 在所有其他 Windows 操作系統(包括 Windows 10)上:394271 |
.NET Framework 4.6.2 | 在 Windows 10 周年更新和 Windows Server 2016 上:394802 在所有其他 Windows 操作系統(包括其他 Windows 10 操作系統)上:394806 |
.NET Framework 4.7 | 在 Windows 10 創意者更新上:460798 在所有其他 Windows 操作系統(包括其他 Windows 10 操作系統)上:460805 |
.NET Framework 4.7.1 | 在 Windows 10 Fall Creators Update 和 Windows Server 版本 1709 上:461308 在所有其他 Windows 操作系統(包括其他 Windows 10 操作系統)上:461310 |
.NET Framework 4.7.2 | 在 Windows 10 2018 年 4 月更新和 Windows Server 版本 1803 上:461808 在除 Windows 10 2018 年 4 月更新和 Windows Server 版本 1803 之外的所有 Windows 操作系統上:461814 |
.NET Framework 4.8 | 在 Windows 10 2019 年 5 月更新和 Windows 10 2019 年 11 月更新上:528040 在 Windows 10 2020 年 5 月更新和 Windows 10 2020 年 10 月更新中:528372 在所有其他 Windows 操作系統(包括其他 Windows 10 操作系統)上:528049 |
最低版本
若要確定是否存在 .NET Framework 的最低版本,請查看大於或等於下列表中列出的相應值的“Release”REG_DWORD 值。 例如,如果應用程序在 .NET Framework 4.8 或更高版本下運行,請測試 Release REG_DWORD 值是否大於或等於 528040。
.NET Framework 版本 | 最小值 |
---|---|
.NET Framework 4.5 | 378389 |
.NET Framework 4.5.1 | 378675 |
.NET Framework 4.5.2 | 379893 |
.NET Framework 4.6 | 393295 |
.NET Framework 4.6.1 | 394254 |
.NET Framework 4.6.2 | 394802 |
.NET Framework 4.7 | 460798 |
.NET Framework 4.7.1 | 461308 |
.NET Framework 4.7.2 | 461808 |
.NET Framework 4.8 | 528040 |
使用注冊表編輯器
-
在“開始”菜單中,選擇“運行”,輸入“regedit”,然后選擇“確定” 。
(必須具有管理憑據才能運行 regedit。)
-
在注冊表編輯器中,打開以下子項:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full。 如果“Full”子項不存在,則表示尚未安裝 .NET Framework 4.5 或更高版本。
-
請檢查名為“Release”的 REG_DWORD 條目。 如果存在,則已安裝 .NET Framework 4.5 或更高版本。 其值對應於 .NET Framework 的特定版本。 以下圖為例,“Release”條目的值為 528040,這是 .NET Framework 4.8 的版本密鑰。
<a name="use-powershell-to-check-for-a-minimum-version">使用 PowerShell 檢查最低版本
使用 PowerShell 命令檢查 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full 子項“Release”條目的值\。
以下示例檢查“Release”條目的值,以確定是否已安裝 .NET Framework 4.6.2 或更高版本。 如果安裝了此代碼,則返回 True
,否則返回 False
。
(Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full").Release -ge 394802
使用代碼查詢注冊表
-
使用 RegistryKey.OpenBaseKey 和 RegistryKey.OpenSubKey 方法訪問 Windows 注冊表中的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full 子項。
重要
如果運行的應用是 32 位且在 64 位 Windows 中運行,則注冊表路徑與前面列出的不同。 可在 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ 子項中找到 64 位注冊表。 例如,.NET Framework 4.5 的注冊表子項為 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v4\Full。
-
檢查 Release REG_DWORD 值以確定已安裝的版本。 為了向前兼容,可檢查是否有一個值大於或等於 .NET Framework 版本表中所列的值。
下面的示例檢查注冊表中 Release 項的值,以查找安裝的 .NETFramework 4.5-4.8 版本。