C#判断.NetFramework库是否安装 发表于 2023-09-25 | 分类于 csharp C#判断.NetFramework库是否安装 正文12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788namespace env_monitor.Utils{ using Microsoft.Win32; using System.Diagnostics; /// <summary> /// 检测.Net环境 /// </summary> public class EnvCheckUtil { /// <summary> /// 判断.Net Framework的Version是否符合需要 (.Net Framework 版本在2.0及以上) /// </summary> /// <param name="version"> /// 需要的版本 version = 4.5 /// </param> /// <returns> /// </returns> public static bool IsInstallDotNet(string version) { string oldname = "0"; using (RegistryKey ndpKey = RegistryKey.OpenRemoteBaseKey( RegistryHive.LocalMachine, "" ) .OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\")) { if (ndpKey != null) foreach (string versionKeyName in ndpKey.GetSubKeyNames()) { if (versionKeyName.StartsWith("v")) { RegistryKey versionKey = ndpKey.OpenSubKey(versionKeyName); if (versionKey != null) { string newname = (string)versionKey.GetValue( "Version", "" ); if (string.CompareOrdinal( newname, oldname ) > 0) { oldname = newname; } if (newname != "") { continue; } foreach (string subKeyName in versionKey.GetSubKeyNames()) { RegistryKey subKey = versionKey.OpenSubKey(subKeyName); if (subKey != null) newname = (string)subKey.GetValue( "Version", "" ); if (string.CompareOrdinal( newname, oldname ) > 0) { oldname = newname; } } } } } } return string.CompareOrdinal( oldname, version ) > 0; } /// <summary> /// 打开系统软件卸载页面 /// </summary> public static void OpenAppUninstallPage() { Process.Start("appwiz.cpl"); } }} 调用 12var isInstallNet = EnvCheckUtil.IsInstallDotNet("4.5");Console.WriteLine(@"是否安装.Net4.5:" + isInstallNet);