如何找出安装了哪个版本的.NET?
我正在寻找像“java -version”这样简单的东西,我可以在命令提示符下输入,并告诉我当前安装的版本。
我最好补充说Visual Studio可能没有安装 - 这通常是我想知道的有关客户机的事情。
答案 0 :(得分:281)
有一种更简单的方法可以从cmd提示符中获取计算机上安装的确切版本.NET版本。只需按照以下说明操作即可;
答案 1 :(得分:220)
只需输入以下命令的任意一个,即可在第一行中找到最新版本。
1. CSC
2. GACUTIL /l ?
3. CLRVER
如果安装了Visual Studio,则只能从Visual Studio命令提示符运行这些文件,否则如果您有.NET框架SDK,则需要运行SDK命令提示符。
4. wmic product get description | findstr /C:".NET Framework"
5. dir /b /ad /o-n %systemroot%\Microsoft.NET\Framework\v?.*
最后一个命令(5)将列出安装的所有版本(4.5除外),最新的。
您需要运行第4个命令,看看是否安装了.NET 4.5。
下面给出了PowerShell命令提示符中的另外三个选项。
6. [environment]::Version
7. $PSVersionTable.CLRVersion
8. gci 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -recurse | gp -name Version,Release -EA 0 |
where { $_.PSChildName -match '^(?!S)\p{L}'} | select PSChildName, Version, Release
最后一个命令(8)将为您提供所有版本,包括.NET 4.5。
答案 2 :(得分:37)
.NET Version Detector是一个GUI实用程序,可显示框架的六个(!)版本中的哪一个。
答案 3 :(得分:28)
在转到命令提示符之前,请按照以下步骤操作...
打开我的电脑→双击“ C:”驱动器→双击“ Windows ”→双击“ Microsoft。 NET “→双击”框架“→在此文件夹中,将有”v1.0.3705“和/或”v2.0.50727“和/或”v3“等文件夹.5“和/或”v4.0.30319“。
您最新的.NET版本将位于v编号最高的文件夹中,因此如果v4.0.30319可用,它将保留您最新的.NET框架。但是,v4.0.30319并不意味着您拥有.NET Framework 4.0版。 v4.0.30319是您的Visual C#编译器版本,因此,为了找到.NET框架版本,请执行以下操作。
转到命令提示符并按照以下路径执行:
C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319(或任何最高的v号文件夹)
C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319> CSC.EXE
输出:
Microsoft(R)Visual C#编译器版本4.0.30319.17929 对于 Microsoft(R).NET Framework 4.5 版权所有(C)Microsoft Corporation。保留所有权利。
以下示例:
答案 4 :(得分:9)
对于安装的框架版本,具体取决于您安装的Service Pack和修补程序。有关详细信息,请查看this MSDN page。它建议查看%systemroot%\Microsoft.NET\Framework
以获取版本。
Environment.Version将以编程方式为您提供CLR的版本。
请注意,这是CLR的版本,并不一定与您安装的最新版本的框架相同(.NET 3.0和3.5都使用CLR的v2)。
答案 5 :(得分:6)
如果打开命令提示符并键入以下两个命令,则将列出当前计算机上安装的所有框架版本(每个版本都存储在此目录中的单独目录中)。
cd %systemroot%\Microsoft.NET\Framework
dir /A:D
答案 6 :(得分:6)
MSDN详细介绍了如何从注册表中检查它here:
通过查看注册表来查找.NET Framework版本(.NET 框架1-4)
- 在“开始”菜单上,选择“运行”。
- 在“打开”框中,输入regedit.exe。您必须具有管理凭据才能运行regedit.exe。
- 醇>
在注册表编辑器中,打开以下子项:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ NET Framework Setup \ NDP
已安装的版本列在NDP子项下。版本 number存储在Version条目中。对于.NET Framework 4 版本条目位于客户端或完整子项(在NDP下)或下 两个子项。
通过查看注册表来查找.NET Framework版本(.NET 框架4.5及更高版本)
注意:上面快照中被截断的最后一行读取On all other OS versions: 461310
。我尝试了最好的水平,以避免在截取屏幕截图时剪切信息,但桌子很大。
答案 7 :(得分:4)
只需在命令行中输入以下内容:
dir /b /ad /o-n %systemroot%\Microsoft.NET\Framework\v?.*
您的dotnet版本将显示为最高编号。
答案 8 :(得分:3)
要在命令行中获取已安装的版本,我建议使用net-version。
源代码可在github.com
上找到完全披露:我是出于挫败感自己创建了这个工具。
答案 9 :(得分:3)
在您的终端类型dotnet --version
答案 10 :(得分:2)
这是我通过引用以下内容使用的Power Shell脚本:
https://stackoverflow.com/a/3495491/148657
$Lookup = @{
378389 = [version]'4.5'
378675 = [version]'4.5.1'
378758 = [version]'4.5.1'
379893 = [version]'4.5.2'
393295 = [version]'4.6'
393297 = [version]'4.6'
394254 = [version]'4.6.1'
394271 = [version]'4.6.1'
394802 = [version]'4.6.2'
394806 = [version]'4.6.2'
460798 = [version]'4.7'
460805 = [version]'4.7'
461308 = [version]'4.7.1'
461310 = [version]'4.7.1'
461808 = [version]'4.7.2'
461814 = [version]'4.7.2'
528040 = [version]'4.8'
528049 = [version]'4.8'
}
# For One True framework (latest .NET 4x), change the Where-Oject match
# to PSChildName -eq "Full":
Get-ChildItem 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -Recurse |
Get-ItemProperty -name Version, Release -EA 0 |
Where-Object { $_.PSChildName -match '^(?!S)\p{L}'} |
Select-Object @{name = ".NET Framework"; expression = {$_.PSChildName}},
@{name = "Product"; expression = {$Lookup[$_.Release]}},
Version, Release
上面的脚本利用了注册表,并为我们提供了Windows更新号以及安装在计算机上的.Net Framework。
这是在两台不同的计算机上运行该脚本时相同的结果
答案 11 :(得分:1)
对于任何运行Windows 10 1607 并且正在寻找 .net 4.7 的人。 无视以上所有内容。
它不在注册表, C:\ Windows \ Microsoft.NET 文件夹或已安装程序列表或WMIC显示相同的列表。
寻找"已安装的更新" KB3186568。
答案 12 :(得分:1)
尝试Scott Hanselman的.NET Checker
。
答案 13 :(得分:1)
如果您经常这样做(我倾向于这样做),您可以在桌面上创建一个快捷方式,如下所示:
powershell.exe -noexit -command "gci 'HKLM:\SOFTWARE\Microsoft\NET Framework Setup\NDP' -recurse | gp -name Version,Release -EA 0 | where { $_.PSChildName -match '^(?!S)\p{L}'} | select PSChildName, Version, Release"
(来自Binoj Antony's post)。(注意:我不确定这是否适用于4.5,但我可以确认它适用于4.6和4.5之前的版本。)
答案 14 :(得分:1)
答案 15 :(得分:1)
clrver
非常出色。只需在.NET提示符下执行它,它将列出所有可用的框架版本。
答案 16 :(得分:0)
每个Microsoft的powershell:
Get-ChildItem "hklm:SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full\" | Get-ItemPropertyValue -Name Release | % { $_ -ge 394802 }
请参阅此链接中的表格以获取搜索特定版本的DWORD值:
答案 17 :(得分:0)
如果您正在开发一些.Net应用程序(例如Web应用程序),您可以制作1行错误代码(如调用错误的函数名称)并重新加载您的页面,.Net版本将显示{{3 }}
答案 18 :(得分:-1)
有一种更简单的方法可以从cmd提示符中获取计算机上安装的确切版本.NET版本。只需按照以下说明操作即可;
打开命令提示符(即Windows + R→键入“cmd”)并在一行中键入以下命令:%windir%\ Microsoft.NET \ FrameWork,然后导航到具有最新版本号的目录