Precisely Identifying Your Installed .NET Framework Version
The .NET Framework is a crucial component for many Windows applications. Knowing its exact version is vital for compatibility and troubleshooting. While Environment.Version()
offers limited details (only the major version), accessing the Windows Registry provides a complete solution.
Accessing Registry Data for .NET 1-4 Versions
For .NET Framework versions 1 through 4, the registry holds comprehensive version and service pack information:
<code class="language-csharp">RegistryKey installed_versions = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\NET Framework Setup\NDP"); string[] version_names = installed_versions.GetSubKeyNames(); double Framework = Convert.ToDouble(version_names[version_names.Length - 1].Remove(0, 1), CultureInfo.InvariantCulture); int SP = Convert.ToInt32(installed_versions.OpenSubKey(version_names[version_names.Length - 1]).GetValue("SP", 0));</code>
Determining .NET 4.5 and Later Versions
Microsoft's official documentation provides a robust method for identifying .NET Framework 4.5 and subsequent versions:
<code class="language-csharp">using Microsoft.Win32; private static void Get45or451FromRegistry() { using (RegistryKey ndpKey = RegistryKey.OpenBaseKey(RegistryHive.LocalMachine, RegistryView.Registry32).OpenSubKey("SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\")) { int releaseKey = Convert.ToInt32(ndpKey.GetValue("Release")); if (true) { Console.WriteLine("Version: " + CheckFor45DotVersion(releaseKey)); } } } private static string CheckFor45DotVersion(int releaseKey) { // Forward compatibility check if (releaseKey >= 528040) { return "4.8 or later"; } // Version-specific checks (omitted for brevity) // ... return "No 4.5 or later version detected"; }</code>
These code snippets allow for accurate retrieval of the .NET Framework version and service pack level, ensuring smooth application operation and integration.
The above is the detailed content of How Can I Determine the Exact .NET Framework Version Installed on My Windows System?. For more information, please follow other related articles on the PHP Chinese website!