C# 获取系统已安装的.NET版本
获取系统已安装的.NET版本,来确定当前应用可运行的环境。
微软已经有相应的完整文档,请参考:确定已安装的 .NET Framework 版本 - .NET Framework | Microsoft Docs
Release根据文档描述是版本密钥,应该是类似版本构建号,能够判断是否已安装.NET。
Version是.NetFramework的版本
我整理了下获取Version的方法,方便大家获取:
1 private Version GetFrameworkVersion() 2 { 3 string registerKey = @"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\"; 4 var defaultVersion = new Version(0, 0); 5 try 6 { 7 using (var sub = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey(registerKey)) 8 { 9 if (!(sub?.GetValue("Release") is int key)) 10 return defaultVersion; 11 12 //判断 13 if (key >= 528040) 14 return new Version(4, 8); 15 if (key >= 461808) 16 return new Version(4, 7, 2); 17 if (key >= 461308) 18 return new Version(4, 7, 1); 19 if (key >= 460798) 20 return new Version(4, 7); 21 if (key >= 394802) 22 return new Version(4, 6, 2); 23 if (key >= 394254) 24 return new Version(4, 6, 1); 25 if (key >= 393295) 26 return new Version(4, 6); 27 if (key >= 379893) 28 return new Version(4, 5, 2); 29 if (key >= 378675) 30 return new Version(4, 5, 1); 31 if (key >= 378389) 32 return new Version(4, 5); 33 } 34 } 35 catch (Exception) 36 { 37 // ignored 38 } 39 //小于4.5,一般不存在这个环境 40 return new Version(0, 0); 41 }
注:如果需要快速获取电脑的.NET版本,可以通过PowerShell查看
(Get-ItemProperty 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Client' -Name Version).Version
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
2020-07-14 前端 引用svg图片,支持动态切换颜色