首頁 > 後端開發 > C++ > 如何確定 Windows 系統上安裝的確切 .NET Framework 版本?

如何確定 Windows 系統上安裝的確切 .NET Framework 版本?

Linda Hamilton
發布: 2025-01-15 10:16:42
原創
214 人瀏覽過

How Can I Determine the Exact .NET Framework Version Installed on My Windows System?

精確辨識您安裝的.NET Framework版本

.NET Framework 是許多 Windows 應用程式的關鍵元件。了解其確切版本對於相容性和故障排除至關重要。雖然 Environment.Version() 提供的詳細資訊有限(僅主要版本),但存取 Windows 註冊表提供了完整的解決方案。

存取 .NET 1-4 版本的登錄資料

對於 .NET Framework 版本 1 到 4,註冊表包含全面的版本和服務包資訊:

<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>
登入後複製

確定 .NET 4.5 及更高版本

微軟官方文件提供了識別.NET Framework 4.5及後續版本的穩健方法:

<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>
登入後複製

這些程式碼片段可以準確地檢索.NET Framework版本和服務包級別,確保應用程式順利運行和整合。

以上是如何確定 Windows 系統上安裝的確切 .NET Framework 版本?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板