查看: 8643|回复: 11
收起左侧

[讨论] 请教各位大佬 .net framework要怎么装比较好?各版本是个什么关系?

[复制链接]
planningall
发表于 2017-11-27 10:29:42 | 显示全部楼层 |阅读模式
一直不太清楚 .net framework到底是怎么回事,就知道是个框架,是程序运行环境,或者类似公共库的东西,所以装系统的时候都是一股脑装进去,什么1.0、2.0、3.5、4.0、4.6、4.6.1、4.7,语言包,能装的都装进去,使用中倒是也没遇到什么问题。

感觉这些版本并不是完全包含的关系,反而有点像VC++运行库,得把各个年份的都装了才行。前几天在一个别人的电脑上运行个程序,就提示缺少 .net framework 3.5,但是那台电脑已经装了 .net framework4.7.1

我想请教一下真正懂这个的(可能只要是搞开发的就懂吧),这些版本的 .net framework中,到底是个怎么样的关系?比如装了3.5是不是就不用装1.0、2.0和3.0?如果我会用到各种各样的软件,不想安装重复的 .net framework,但是也不想在使用中提示缺少某个版本的 .net framework,我最小程度具体应该安装哪些版本?


你好我好大家好
发表于 2017-11-27 10:36:04 | 显示全部楼层
不知你用的是什么系统,是Windows 7 还是Windows 10 。Windows10的WIM包中是有net3.5的,只是没有启用,你用命令启用它即可!Windows 7 系统中自带net3.5并已启用!
落落的瓶子
发表于 2017-11-27 11:02:56 | 显示全部楼层
各个版本间的包含关系也不一样,下图来自wiki 2017-11-27_10-57-32.png
另外,一个大版本可能存在多个小版本,不排除某些特殊情况下程序会指定小版本

planningall
 楼主| 发表于 2017-11-27 11:30:31 | 显示全部楼层
落落的瓶子 发表于 2017-11-27 11:02
各个版本间的包含关系也不一样,下图来自wiki
另外,一个大版本可能存在多个小版本,不排除某些特殊情况下 ...


我用的系统是windwos 7 x64,而且在更换主板、cpu、内存、硬盘之前不打算换系统(除非win 7已经彻底不支持新硬件)

这张表真是非常清楚啊,总结起来,是不是这样的:
1.0
1.1
3.5(3.0(2.0)))
4.7(4.6.2(4.6.1(4.6(4.5.2(4.5.1(4.5(4.0)))))))

结论就是:真正需要安装的是这几个版本:4.7、3.5、1.1和1.0?
(.net framework不分x86和x64吧,另外,语言包也是不需要安装的对不对,顶多弹出对话框是英文的)

关于“不排除某些特殊情况下程序会指定小版本”,比如4.5.1算大版本还是小版本?就算某程序指定要用4.5.1,但是已经被包含在4.7中,所以只要装一个4.7应该也能解决问题的,是不是?
nide312
发表于 2017-11-27 11:58:46 | 显示全部楼层
安装了.Net 4.7.1,就不用安装.Net 4、4.5、4.5.1、4.5.2、4.6、4.6.1、4.6.2、4.7了。
落落的瓶子
发表于 2017-11-27 12:25:36 | 显示全部楼层
planningall 发表于 2017-11-27 11:30
我用的系统是windwos 7 x64,而且在更换主板、cpu、内存、硬盘之前不打算换系统(除非win 7已经彻底不 ...

基本可以这么理解,不过实际上,3.5之前的版本已经废了,Win7上安装都会提示兼容性有问题,好像是1.0还会直接装不上。
还有一点需要注意的是,在图中也注明了每一代系统自带的版本,直接在控制面板-程序-打开或关闭windows功能,找到Microsoft.NET Framework一项,选中确定即可。
以及,小版本指的是标准版本号的第三位,含义为build版本,这个在控制面板中看比较直观
2017-11-27_12-14-07.png


如图,大版本为4.6.2,小版本应该为1586(显示为01586,这里的0可以省略)
指定小版本的情极其少见,安装时如果莫名其妙提示已经安装了更高版本或直接装不上,又或者明明装了对应版本的.NET Framework程序仍然提示没有装,记得看看小版本号就好了。
至于你提到的x86/x64的问题,实际上在4.0(也可能是3.5吧记不太清了)之前是分别提供安装包的,后来合并成一个安装包了
planningall
 楼主| 发表于 2017-11-27 12:33:57 | 显示全部楼层
落落的瓶子 发表于 2017-11-27 12:25
基本可以这么理解,不过实际上,3.5之前的版本已经废了,Win7上安装都会提示兼容性有问题,好像是1.0还会 ...

我这装的就是个乱七八糟,这次重装系统,一定要好好收拾收拾,太恶心了。

非常感谢您专业、细致、认真的回复。

d.png
落落的瓶子
发表于 2017-11-27 15:26:59 | 显示全部楼层
planningall 发表于 2017-11-27 12:33
我这装的就是个乱七八糟,这次重装系统,一定要好好收拾收拾,太恶心了。

非常感谢您专业、细致、认真 ...

装了VS2017。。。那本机环境版本众多就不足为奇了,毕竟开发是需要准备多套环境以应付不同需求的。
不过现在我接触到的项目来看,4.0/4.5是最多的了,应用到4.6.x的新特性的项目我只接触到一个。
没有硬性要求的话装VS2012就可以了,足够日常学习工作使用了。
吐个槽,遇到过Server 2008 R2在升级了.NET Framework 4.7之后某程序无法运行的bug,后来我就只认4.6.2了
philotack
发表于 2017-11-27 16:47:40 | 显示全部楼层
本帖最后由 philotack 于 2017-11-27 16:51 编辑

个人理解,整数位上的版本号是互不兼容的,小数位上的版本号是各种升级。
win7应该是自带2.0和3.5的,然后自己手动安装4.6.2就可以了。
补丁什么的基本上没用,除非个别软件需要时再安装。我没有遇到过。4.7.1比较贱,需要安装一堆补丁后才给装。懒的打补丁,就没升级。


chncwk
发表于 2017-11-27 22:47:26 | 显示全部楼层
先装最高版,等到有软件提示要装低版本时再装一个。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-5-7 20:35 , Processed in 0.129076 second(s), 19 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表