为啥 .NET framework 3.5 离线安装程序比 .NET 4 离线安装程序大 200 MB?

Posted

技术标签:

【中文标题】为啥 .NET framework 3.5 离线安装程序比 .NET 4 离线安装程序大 200 MB?【英文标题】:How come the .NET framework 3.5 offline installer is 200 MBs larger than the .NET 4 offline installer?为什么 .NET framework 3.5 离线安装程序比 .NET 4 离线安装程序大 200 MB? 【发布时间】:2011-06-08 14:48:15 【问题描述】:

我有代码/支持基于 .NET 框架构建的应用程序,该框架始终在 .NET 2 上运行。今年我们正在升级应用程序以使用 .NET 3.5(或 4?)。

在准备此更改时,我们注意到 .NET 3.5 的离线安装程序(我们的客户群需要)比 .NET 4 离线安装程序大 200 多 MB。

这是我的问题。

为什么 dotnet 3.5 安装程序比 4 离线安装程序大很多?

我们能否以 .NET 3.5 为目标但分发 .NET 4。换句话说,.NET 4 是否向后兼容?假设 .NET 4 是唯一安装的 .NET 应用程序是否仍可针对早期框架?

如果我们的应用程序是为 x86 CPU(而不是任何 CPU)编译的,您还需要分发 x64/x86 客户端配置文件还是我们可以只分发 x86 客户端配置文件?换句话说,如果我们的应用程序是为 x86 目标 CPU 编译的,即使它将安装在 x64 机器上,我们是否可以分发 x86 客户端配置文件?这样做有什么风险或陷阱吗?

问题在于,如果我们将应用程序升级到 .NET 4 目标,我们还必须升级许多应用程序服务器,这会影响许多其他应用程序。有什么想法吗?

赛斯

【问题讨论】:

好问题,我自己也想知道同样的事情:) 【参考方案1】:

这是因为先决条件。 .NET 4.0 安装程序需要将目标计算机更新到

XP SP3 Vista SP1 服务器 2003 SP2 Server 2008 或 Win7

3.5 SP1 安装程序要宽松得多,它甚至可以在原始版本的 XP 上运行。为了使这项工作发挥作用,它需要包括许多核心 Windows 组件的更新。 231 MB 安装程序中有很大一部分实际上并不是 .NET 组件。

另外值得注意的是,在 .NET 4.0 中,客户端配置文件和完整版之间的差异已基本​​消失。完整版仅大 15%,定位客户资料没有多大意义。

【讨论】:

【参考方案2】:

.NET 3.5 与 .NET 3.0 和 .NET 2.0 完全向后兼容 - 因此它也包括所有这两个以前的版本。另一方面,.NET 4.0 从头开始​​,可以丢弃已弃用/不必要的代码。这也意味着 .NET 4.0 不一定能原封不动地运行 .NET 3.5 代码 - 还有另一个 SO answer on some of the breaking changes there。

【讨论】:

这不准确,没有单独的程序集版本。从 2.0 到 3.5 SP1 的所有基础程序集都有程序集版本 2.0.0.0 @Hans,确实如此。所以我说3.5包含了所有以前的版本(框架的版本和汇编版本关系不大)

以上是关于为啥 .NET framework 3.5 离线安装程序比 .NET 4 离线安装程序大 200 MB?的主要内容,如果未能解决你的问题,请参考以下文章

请问大佬有.NET Framework 3.5 离线安装包 64位软件免费百度云资源吗

win8.1怎么安装net framework 3.5离线安装包

Windows Server 2016 安装.NET Framework 3.5 错误处理

Windows Server 2016 安装.NET Framework 3.5 错误处理

Windows Server 2016 安装.NET Framework 3.5 错误处理

Windows Server 2016 安装.NET Framework 3.5 错误处理