![.NET Framework 4 向后兼容性](https://linux22.com/image/1241736/.NET%20Framework%204%20%E5%90%91%E5%90%8E%E5%85%BC%E5%AE%B9%E6%80%A7.png)
我已在系统中安装了 .NET Framework 4。系统显示 .NET Framework 4 向后兼容所有以前的版本。但应用程序安装程序仍要求我安装 .NET Framework 3.5 SP1。
我应该怎么做才能让安装程序知道.NET 4 的存在?
是否也需要安装 .NET 3.5 SP1?(这是一个很大的安装程序,约 250 MB。)
答案1
向后兼容性只是意味着为 3.5 编写的代码在为 .NET 4.0 重新编译时不会中断。这与在 .NET 4.0 下运行不同。
答案2
...但是,微软现在(从 XP 和更新的架构开始)支持并行理念。这意味着如果您无法让主流操作系统补丁发挥作用,那么就并行运行每个版本!他们从 UNIX 链接器逻辑中借用了这种逻辑,我们从 80 年代开始就一直在这样做。他们花了很长时间才明白过来,是吧?
http://msdn.microsoft.com/en-us/library/8477k21c.aspx
我应该补充一点,实际上为这种做法设置一台计算机是有点危险的。如果安全补丁或服务包针对 .NET Framework 4 发布了,而您已经安装并运行了 .NET Framework 1.1 SP1、2.0 SP2、3.5 SP1,那么您的注册表和硬盘驱动器可能会一片混乱,因为服务包会尝试将所有以前的版本升级到 .NET 4.0 SP 等等。
如果你这样做,一定要提前做好计划。关闭自动更新。使用虚拟机。下载并计划自己的更新,卸载并安装任何 .NET 软件包的完整版本(而不是补丁程序)等。永远不要相信主流更新服务与并行努力是一致的。