【问题标题】:clr version for visual studio 2010Visual Studio 2010 的 clr 版本
【发布时间】:2013-03-09 01:41:50
【问题描述】:

我的机器中只有 Visual Studio 2010。但是,当我查看“clrver”的 Visual Studio 命令提示符时,它显示我的机器中安装了两个版本的 CLR - v2.0.5 和 v4.0.3

通过此链接,我了解到我的机器中应该只有 CLR 版本 v4.0.3。 http://msdn.microsoft.com/en-us/library/bb822049.aspx

但我很困惑我是如何获得 v2.0.5 的。请解释一下?

【问题讨论】:

    标签: .net visual-studio-2010 clr clr4.0


    【解决方案1】:

    Visual Studio 2010 允许您编写面向多个 NET Framework 版本(2.0、3.0、3.5 和 4.0)的应用程序。

    您会从链接到的文章中注意到,.NET Framework 版本 2.0、3.0 和 3.5 都共享相同的 CLR 版本:2.0,而 4.0 使用 CLR 的新版本 4.0。

    因此,为了让 VS2010 允许您处理 2.0-3.5 项目,它需要安装 2.0 CLR。这就是安装它的原因。

    【讨论】:

    • CLR v4.0.3 不支持向后兼容 .net 框架 2.0、3.5 和 4.0,还是我们需要单独的 CLR v2.0 来支持这些?
    • 向后兼容性有限,但与 Java 不同,Microsoft 没有承诺向后兼容,因为需要更改行为并弃用和删除过时的元素。当然,大多数以 2.0 为目标的程序都可以在 4.0 上运行,但这不能保证。
    【解决方案2】:

    简单地说,当 clrver 告诉你时

    C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC>clrver
    
    Microsoft (R) .NET CLR Version Tool  Version 4.0.30319.17929
    Copyright (c) Microsoft Corporation.  All rights reserved.
    
    Versions installed on the machine:
    v2.0.50727
    v4.0.30319
    

    其实意思是

    • 您在这台机器上安装了 .NET 2/3/3.5
    • 您在此计算机上安装了 .NET 4 或 4.5

    输出仅与您计算机上安装的 .NET Frameworks 相关,与您使用的 Visual Studio 版本无关。

    CLR v2.0.50727 由 .NET 2.0/3.0/3.5 共享,而 CLR v4.0.30319 由 .NET 4.0 和 4.5 共享。请尝试将 .NET Framework 和 CLR 视为独立的概念。我知道初学者很难区分它们。

    注意它是v2.0.50727,而不是2.0.5 mate,因为2.0.50727 是一个原子概念。这也适用于v4.030319。

    您对 MSDN 文章的理解不正确。为了避免进一步的误解,您可以从诸如 CLR via C# 等书籍中阅读更多关于 CLR 的信息。

    【讨论】:

      猜你喜欢
      • 2017-07-29
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多