当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何检查 Windows 上安装的 .NET Framework 版本

作者:精品下载站 日期:2024-12-14 23:14:36 浏览:12 分类:玩电脑

如何检查 Windows 上安装的 .NET Framework 版本


在 Windows 上,您可以同时安装和运行多个版本的 .NET Framework。在开发或部署基于 .NET 库的新应用程序时,有时您需要提前了解用户计算机或服务器上已安装了 .Net Framework 的哪些版本和服务包。您可以通过多种方式获取计算机上安装的 .NET Framework 版本的列表。

通过 Windows 注册表检查 .NET Framework 版本

当您安装或更新任何版本的 .NET Framework 时,更改都会写入 Windows 注册表。

运行注册表编辑器(

regedit.exe

)并转到注册表项 HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP。此注册表项包含有关计算机上所有 .NET 版本的信息。展开任意子项并注意以下参数(对于.Net 4.x,您需要展开Full子项):

  • Install — 安装标志(如果等于 1,则计算机上安装了此版本的 .Net);

  • 安装路径 — 安装此.Net版本的目录;

  • 发布 — .NET 版本号;

  • 版本 — .Net Framework 的完整版本号。

[玩转系统] 如何检查 Windows 上安装的 .NET Framework 版本

提示。对于 .NET 4.0 及更高版本,如果缺少 Full 子项,则意味着计算机上未安装此版本的 Framework。

在此示例中,您可以看到已安装 .NET Framework v2.0.50727、3.0、3.5 和 7.0(版本 460805)。

请注意,在从 Windows Server 2012 开始的服务器操作系统中,所有基本 .Net 版本(3.5 和 4.5)均作为 Windows 功能安装(在 Windows Server 和 Windows 10 上安装 .NET Framework 3.5),次要版本(4.5.1、4.5.2 等)通过 Windows Update 或 WSUS 作为单独更新安装。

使用下表,您可以将版本号映射到 .NET Framework 的版本(适用于 .NET 4.5 及更高版本)。

Release Number.NET Framework version378389.NET Framework 4.5378675NET Framework 4.5.1 on Windows 8.1 and Windows Server 2012 R2378758.NET Framework 4.5.1 on Windows 8, Windows 7 SP1, Windows Vista SP2379893.NET Framework 4.5.2393295.NET Framework 4.6 on Windows 10393297.NET Framework 4.6394254.NET Framework 4.6.1 on Windows 10 1511394271.NET Framework 4.6.1394802.NET Framework 4.6.2 on Windows 10 1607394806.NET Framework 4.6.2460798.NET Framework 4.7 on Windows 10 1703460805.NET Framework 4.7461308.NET Framework 4.7.1 on Windows 10 1709461310.NET Framework 4.7.1461808.NET Framework 4.7.2 on Windows 10 1803461814.NET Framework 4.7.2528372.NET Framework 4.8 on Windows 10 2004, 20H2, and 21H1528040.NET Framework 4.8 on Windows 10 1903 and 1909528449.NET Framework 4.8 on Windows Server 2022 and Windows 11528049.NET Framework 4.8 (other Window versions)

.NET Framework 4.8 是 .NET Framework 的最新可用版本。

如何使用PowerShell检查.NET Framework版本?

您可以使用 PowerShell 获取有关计算机上已安装的 NET Framework 版本和发行版的信息。直接从注册表获取此信息的最简单方法是使用

Get-ChildItem

Get-ItemProperty

cmdlet(有关使用 PowerShell 管理注册表项的更多信息)。

要显示计算机上 .Net Framework 所有版本的列表,请运行以下命令:

Get-ChildItem ‘HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP’ -Recurse | Get-ItemProperty -Name version -EA 0 | Where { $_.PSChildName -Match ‘^(?!S)\p{L}’} | Select PSChildName, version

[玩转系统] 如何检查 Windows 上安装的 .NET Framework 版本

此计算机上安装了 .Net 版本 2.0、3.0、3.5 和 4.7。

从 .Net v4.0 开始,较新的 Framework 版本将覆盖(替换)旧版本。如果计算机上安装了.NET Framework 4.7,那么在安装.NET Framework 4.8时,旧版本将被替换。

您只能显示(.Net 4.x 版本)的版本号:

(Get-ItemProperty ‘HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full’ -Name Release).Release

[玩转系统] 如何检查 Windows 上安装的 .NET Framework 版本

根据该表,数字528449对应于Windows 11上的.Net Framework 4.8。

列出远程计算机上安装的 .NET 版本

您可以使用 PowerShell 远程获取网络上计算机上安装的 .Net Framework 版本的列表。

下面是一个小型 PowerShell 脚本,它从文本文件查询计算机列表并远程检查已安装的 .Net Framework 版本。 WinRM Invoke-Command cmdlet 用于在远程计算机上运行命令。

Function GetNetFrameworkVersion {
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -recurse |
Get-ItemProperty -name Version,Release -EA 0 |
Where { $_.PSChildName -match '^(?![SW])\p{L}'} |
Select PSChildName, Version, Release, @{
name="Product"
expression={
switch -regex ($_.Release) {
"378389" { [Version]"4.5" }
"378675|378758" { [Version]"4.5.1" }
"379893" { [Version]"4.5.2" }
"393295|393297" { [Version]"4.6" }
"394254|394271" { [Version]"4.6.1" }
"394802|394806" { [Version]"4.6.2" }
"460798|460805" { [Version]"4.7" }
"461308|461310" { [Version]"4.7.1" }
"461808|461814" { [Version]"4.7.2" }
"528040|528049|528449|528372" { [Version]"4.8" }
{$_ -gt 528449} { [Version]"unidentified version (> 4.8)" }
}
}
}
}
$result=@()
$servers= Get-Content C:\Scripts\my_servers.txt
foreach ($server in $servers)
{
$result+=Invoke-Command -ComputerName $server -ScriptBlock $function:GetNetFrameworkVersion
}
$result|  select PSComputerName,@{name = ".NET Framework"; expression = {$_.PSChildName}},Product,Version,Release| Out-GridView

该脚本显示一个图形表(通过 Out-GridView),其中包含远程计算机上安装的 .Net Framework 版本的列表。

[玩转系统] 如何检查 Windows 上安装的 .NET Framework 版本

您还可以设置要检查 .NET 版本的计算机列表,如下所示:

$servers= @("comp1","comp2","comp3","comp4")

或者,您可以使用 Get-ADComputer cmdlet(从 Windows PowerShell 模块的 Active Directory)获取域计算机列表。以下命令将选择域中所有活动的 Windows Server 主机:

$servers= Get-ADComputer -Filter 'operatingsystem -like "*Windows server*" -and enabled -eq "true"'

如何使用CMD查找.NET Framework版本?

所有版本的 .NET Framework 均安装到以下 Windows 文件夹中:

  • %SystemRoot%\Microsoft.NET\Framework
  • %SystemRoot%\Microsoft.NET\Framework64

您只需打开该文件夹即可查看已安装的 .NET 版本的列表。每个版本都有一个单独的目录,以 v 和版本号作为文件夹名称。您可以从命令提示符列出已安装的 .NET Framework 版本:

dir %WINDIR%\Microsoft.Net\Framework\v* /O:-N /B

[玩转系统] 如何检查 Windows 上安装的 .NET Framework 版本

此命令将列出除 .NET 4.5 之外的所有已安装版本,因为 Framework 4.5+ 安装到 v4.0.xxxxx 子目录中。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯