2009-04-07 52 views
0

在较旧的框架版本中创建的软件如何不能在较新的框架版本上运行?旧的.NET软件问题

其实,无论何时我尝试在PC上运行一些具有.net 3.5框架的旧特定软件,它们都会显示它们需要.net框架1.1。什么是坏事?

我的较新版本的Photoshop ans Ms office打开所有较低版本的文件。

+0

这不是一个坏问题,也不需要关闭。 – Will 2009-04-07 18:16:13

回答

2

.NET 1.1和.NET 2.0是不同的框架。但.NET 3.0和3.5框架是增量式的增加,意味着它们依赖于.NET 2.0框架。所以如果你有1.1中写的东西,那么你需要安装1.1。任何使用2.0编写的应用程序都应该在.NET 2.0,3.0,3.5甚至4.0的机器上正常工作(如果您冒险的话)。

1

不运行或不编译?它们是有区别的。

3

它通常会。有一些后向不兼容,但不是很多,所有的事情都考虑在内。

您是否有特定的问题?

2

简短的回答是“让他们可以添加新功能”。有时,如果不添加breaking change来完成过去的工作,则无法添加功能。

也就是说,较新版本的框架通常会运行为旧版本编写的程序。

0

取决于您使用的API。你也可以强制程序只在一个框架中运行。检查app.config。

1

.NET平台旨在并行运行不同的版本。它不是为了向后兼容而设计的。

并行运行不同版本的CLR的能力意味着CLR可以更加积极地进行更新和改进,而不用担心会破坏向后兼容性或在为以前版本编写的程序中创建错误。这是因为针对1.1版本的应用程序在新版本发布后仍然在1.1版本的相同版本上运行。