我如何找到.NET版本?

How do I find the .NET version?

如何找到安装的.NET版本?

我正在寻找像"java -version"这样简单的东西,我可以在命令提示符下键入它并告诉我当前安装的版本。

我最好补充说Visual Studio可能没有安装 - 这通常是我想知道的客户端机器。


有一种更简单的方法可以从cmd提示符中获取计算机上安装的确切版本.NET版本。只需按照以下说明操作即可

  • 打开命令提示符(即Windows + R→键入"cmd")。
  • 全部在一行中键入以下命令:
  • reg query"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
    ET Framework Setup
    DP"

    (这将列出所有.NET版本。)

  • 如果要检查最新的.NET 4版本。
  • 在一行上输入以下说明:
  • reg query"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
    ET Framework Setup
    DP\v4\full" /v version

    请在下面找到附图,看看它是如何显示的。

    Enter image description here


    只需键入以下任一命令即可在第一行中为您提供最新版本。

    1
    2
    3
    1. CSC
    2. GACUTIL /l ?
    3. CLRVER

    如果安装了Visual Studio,则只能从Visual Studio命令提示符运行这些文件,否则如果您有.NET框架SDK,则需要SDK命令提示符。

    1
    2
    4. wmic product get description | findstr /C:".NET Framework"
    5. dir /b /ad /o-n %systemroot%\Microsoft.NET\Framework\v?.*

    最后一个命令(5)将列出所有安装的.NET版本(4.5除外),最新版本。
    你需要运行第4个命令来查看是否安装了.NET 4.5。

    PowerShell命令提示符中的另外三个选项如下所示。

    1
    2
    3
    4
    5
    6
    6.   [environment]::Version
    7.   $PSVersionTable.CLRVersion
    8.   gci 'HKLM:\SOFTWARE\Microsoft
    ET Framework Setup
    DP' -recurse | gp -name Version,Release -EA 0 |
         where { $_.PSChildName -match '^(?!S)\p{L}'} | select PSChildName, Version, Release

    最后一个命令(8)将为您提供所有版本,包括.NET 4.5。


    .NET Version Detector是一个GUI实用程序,可显示框架的六个(!)版本中的哪个版本。


    在转到命令提示符之前,请按照以下步骤操作...

    打开我的电脑→双击"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。版权所有。

    示例如下:

    Enter image description here


    对于安装的框架版本,它取决于您已安装的Service Pack和修补程序。请查看此MSDN页面以获取更多详细信息。它建议在%systemroot%\Microsoft.NET\Framework中查找版本。

    Environment.Version将以编程方式为您提供CLR的版本。

    请注意,这是CLR的版本,并不一定与您安装的最新版本的框架相同(.NET 3.0和3.5都使用CLR的v2)。


    MSDN在这里详细介绍了如何从注册表中检查它:

    To find .NET Framework versions by viewing the registry (.NET
    Framework 1-4)

  • On the Start menu, choose Run.
  • In the Open box, enter regedit.exe.You must have administrative credentials to run regedit.exe.
  • In the Registry Editor, open the following subkey:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
    ET Framework Setup
    DP

  • The installed versions are listed under the NDP subkey. The version
    number is stored in the Version entry. For the .NET Framework 4 the
    Version entry is under the Client or Full subkey (under NDP), or under
    both subkeys.

    To find .NET Framework versions by viewing the registry (.NET
    Framework 4.5 and later)

  • On the Start menu, choose Run.
  • In the Open box, enter regedit.exe. You must have administrative credentials to run regedit.exe.
  • In the Registry Editor, open the following subkey:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft
    ET Framework Setup
    DP\v4\Full

  • Note that the path to the Full subkey includes the subkey Net
    Framework rather than .NET Framework

    Check for a DWORD value named Release. The existence of the Release
    DWORD indicates that the .NET Framework 4.5 or newer has been
    installed on that computer.

    enter image description here

    注意:上面快照中被剪切的最后一行读取On all other OS versions: 461310。我尝试了最好的水平,以避免在截取屏幕截图时信息被截断,但桌子太大了。


    如果打开命令提示符并键入以下两个命令,则将列出当前计算机上安装的所有框架版本(每个版本都存储在此目录中的单独目录中)。

    1
    2
    3
    cd %systemroot%\Microsoft.NET\Framework

    dir /A:D


    此答案仅适用于.NET Core!

    在您选择的终端中键入dotnet --version将打印出正在使用的.NET Core SDK版本。

    在此处了解有关dotnet命令的更多信息。


    只需在命令行中键入以下内容:

    1
    dir /b /ad /o-n %systemroot%\Microsoft.NET\Framework\v?.*

    您的dotnet版本将显示为最高编号。


    要在命令行中获取已安装的版本,我建议使用net-version。

    • 它只是一个单一的
      二进制文件。
    • 它使用了我提供的指南
      微软
      获取版本信息。
    • 它不需要安装SDK。
    • 或Visual Studio命令提示符。
    • 它不要求您使用regedit并搜索注册表项
      你自己。您甚至可以在命令行工具中管道输出if
      你需要。

    源代码可在github.com上获得

    完全披露:我自己创造了这个工具,感到沮丧。


    试试Scott Hanselman的.NET Checker


    如果您经常这样做(我倾向于这样做),您可以在桌面上创建一个快捷方式,如下所示:

  • 右键单击桌面,然后选择新建→快捷方式。
  • 在位置字段中,粘贴此字符串:powershell.exe -noexit -command"gci 'HKLM:\SOFTWARE\Microsoft
    ET Framework Setup
    DP' -recurse | gp -name Version,Release -EA 0 | where { $_.PSChildName -match '^(?!S)\p{L}'} | select PSChildName, Version, Release"
    (这是来自Binoj Antony的帖子)。
  • 点击下一步。为快捷方式命名并完成。
  • (注意:我不确定这是否适用于4.5,但我可以确认它适用于4.6和4.5之前的版本。)


    我的上帝,找到安装的.net框架的版本这么乱?

    Windows>搜索> Visual Studio安装程序>对于已安装的VS版本,点击更多>修改>单个组件并在那里查看:

    enter image description here


    clrver是一个很棒的人。只需在.NET提示符下执行它,它将列出所有可用的框架版本。


    对于运行Windows 10 1607并寻找.net 4.7的任何人。
    无视以上所有内容。

    它不在Registry,C: Windows Microsoft.NET文件夹或Installed Programs列表或同一列表的WMIC显示中。

    查找"已安装的更新"KB3186568。


    每个Microsoft在powershell中:

    1
    2
    3
    Get-ChildItem"hklm:SOFTWARE\Microsoft
    ET Framework Setup
    DP\v4\Full" | Get-ItemPropertyValue -Name Release | % { $_ -ge 394802 }

    请参阅此链接中的表以获取DWORD值以搜索特定版本:

    https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed#ps_a


    如果您正在开发一些.Net应用程序(例如Web应用程序),您可以制作1行错误代码(如调用错误的函数名称)并重新加载您的页面,.Net版本将显示enter image description here


    有一种更简单的方法可以从cmd提示符中获取计算机上安装的确切版本.NET版本。只需按照以下说明操作即可

    打开命令提示符(即Windows + R→键入"cmd")并在一行中键入以下命令:%windir% Microsoft.NET FrameWork,然后导航到具有最新版本号的目录。

    请参阅http://dotnettec.com/check-dot-net-framework-version/