首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows10的.NET框架

Windows10的.NET框架
EN

Stack Overflow用户
提问于 2015-10-16 15:51:28
回答 2查看 3.6K关注 0票数 1

我希望检查我的.NET应用程序的兼容性影响。我需要瞄准Windows10。但是,在微软网站上,我找不到Windows10的.NET框架4.0。

我们是不是没有Windows 10版?它不受支持吗?如果是,那么下一步是什么?

Microsoft .NET Support

EN

回答 2

Stack Overflow用户

发布于 2015-10-16 15:55:39

CLR4.6仍然使用CLR4.0,因此任何.NET 4.x代码都应该可以顺利运行。

票数 1
EN

Stack Overflow用户

发布于 2017-03-27 18:36:39

主要的混淆是任何.NET版本都有两个重要的版本号:版本号和CLR版本。实际上,应用程序并不关心.NET版本,而是关心CLR版本。令人困惑?我同意。让我们多聊聊。

当.NET发布时,它是运行在CLR1.0上的.NET 1.0。这没什么让人困惑的。不久之后,CLR1.1发布了.NET 1.0版。虽然在大多数情况下,你不需要重写代码就可以从一个转到另一个,但CLR 1.1无法运行为CLR 1.0编译的代码,反之亦然。不过,这并不太令人困惑: 1.0版的应用程序只有在1.0版的时候才能运行,1.1版的应用程序只有在1.1版的时候才能运行。

然后是.NET 2.0,以及随之而来的CLR2.0。同样,CLR2.0不能向后兼容,因此.NET 1.x应用程序无法在其上本地运行。仍然很清楚,尽管现在人们焦虑不安,他们不得不同时处理三个不同的大型安装程序。微软在这段时间内对.NET有很多计划,所以他们改变了部署方式,如果你对“乐趣”的想法“困难”,那么这才是真正有趣的地方。

.NET 3.0和.NET 3.5发布的版本非常接近。它们都使用CLR 2.0。如果你安装了.NET 3.5,因为它使用的是CLR2.0,你可以在上面运行任何.NET 3.5、3.0或2.0应用程序。但它不能运行.NET 1.0或.NET 1.1应用程序,它们需要自己的repsective。有趣的是,您可以编译一个针对.NET 3.5的应用程序,并在只安装了CLR 2.0的机器上运行它,因为它们是兼容的.NET。只有当您尝试使用.NET 3.5中的新库,或者它们破坏行为的罕见实例时,您才会遇到麻烦。

与CLR4一起发布的.NET 4.0,我猜是因为版本号的小数点用完了。由于它不是CLR2,因此它不能真正运行为.NET 4.0以外的任何配置的应用程序。但这是一种谎言。你可以在你的app.config中使用"supportedRuntime“标签来告诉.NET你的应用程序支持CLR4。因为CLR4和CLR2在很大程度上是兼容的,所以大多数.NET 2.0-3.x应用程序可以在CLR4上运行得很好。但是这是不安全的,除非你确认你没有依赖于在两者之间改变的东西,所以它们让你不得不显式地声明它是一个想要的功能。对于CLR4,只重新编译应用程序通常更容易,但是在测试和验证时,使用app.config是一个很好的创可贴。

.NET 4.5、4.5.1、4.5.2和4.5.6都可以在CLR4和jeez上运行,这是很多版本。

就你可以依赖的方面来说,它是一团糟。2.0CLR默认安装在Windows Vista和Windows7上,但分别是2.0和3.5。默认情况下,4.0 CLR仅适用于Windows 8(随附4.5)和Windows 10 (随附4.6)。这两个版本都没有发布2.0CLR,但我知道8通常会对运行需要它的应用程序的尝试做出回应,为你安装它。这很让人困惑,但在Vista发布之前,你不能假设客户端机器有任何.NET框架,并且它们都代表500+MB下载。因此,至少我们正在取得进展。

自3.0版以来一直适用于.NET部署的一般规则是:它比您想象的要难。一直都是。如果使用最新的.NET框架进行编译,则部署起来最容易,而且通常不需要更新代码即可实现。当你不能做到这一点时,如果你在任何最新的CLR上运行,那么部署它是最容易的。当你不能做到这一点时,如果你使用app.config将你的应用程序强制安装到新的CLR上,有时它就会正常工作。在没有经过大量测试和验证的情况下,或者至少警告你不是100%确定的情况下,不要向客户透露这一点。如果您使用的不是CLR4.x,无法为CLR4重新构建,也无法使用配置文件运行,请确保您的客户了解他们需要安装.NET 2,即.NET Framework3.5。如果您是安装程序开发人员,请始终将您最喜欢的饮料放在办公桌前。

参考:More in depth thread

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33165208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档