Reputation: 152787
How come software created in an older framework version won't run on a newer framework version?
Actually whenever i try to run some old specific software having .net 3.5 framework on my PC they show they needs .net framwork 1.1 . What a bad thing?
My newer version of Photoshop ans Ms office open all lower version files.
Upvotes: 0
Views: 249
Reputation:
The .NET platform is designed to run different versions side-by-side. Its not designed to be backwards compatible.
The ability for different versions of the CLR to run side-by-side means that the CLR can be updated and improved much more aggressively without fear of breaking backwards compatibility or creating bugs in programs written for a previous version. This is because applications designed for 1.1 are still running on the same version of 1.1 long after newer versions have been released.
Upvotes: 1
Reputation: 10839
.NET 1.1 and .NET 2.0 are different frameworks. But the .NET 3.0 and 3.5 frameworks are incremental additions, meaning they rely on the .NET 2.0 framework. So if you have something written in 1.1 then you need 1.1 installed. Anything written in 2.0 should work fine on a machine with .NET 2.0, 3.0, 3.5, or even 4.0 (if you are adventurous).
Upvotes: 2
Reputation: 416059
The short answer is "so that they can add new features". Sometimes you can't add a feature without adding a breaking change to the way something was done in the past.
That said, newer versions of the framework often will run programs written for an older version.
Upvotes: 2
Reputation: 5819
Depends in the API you use. Also you can force the program to run only in one framework. Check the app.config.
Upvotes: 0
Reputation: 1502406
It generally does. There are a few backward incompatibilities, but not very many, all things considered.
Do you have a specific problem in mind?
Upvotes: 3
Reputation: 74290
Does not run or does not compile? There is a difference.
Upvotes: 1