Do .Net 4 Framework WinForms Applications Need Previous Versions? - .net-4.0

.NET 4 has a new CLR.
If I install the V4 framework on a PC will it install if there are NO earlier framework versions on that PC? Also, will my WinForms applications, targeted at .NET 4 run smoothly with no other framework installed?

Yes your app will run smoothly. .net 4 is not dependent on previous versions.

.Net 4 is dependent on something called Windows Imaging Component and Windows installer 3.1

Related

winrt windows 8 change .net framework target

How can I change .Net Framework version in windows store application from 4.5.1 to 4.5 ? Seems like it is only possible when you are creating new project.
You cannot change the .NET framework version on Windows Store apps - you can only choose the targeted Windows version (8.0 or 8.1) like shown in Filip's answer. What's do you want to change the framework version?
Compare empty 8.0 and 8.1 project files and you'll see some very simple difference to change - possibly just
<TargetPlatformVersion>8.1</TargetPlatformVersion>
<MinimumVisualStudioVersion>12</MinimumVisualStudioVersion>
to
<TargetPlatformVersion>8.0</TargetPlatformVersion>
<MinimumVisualStudioVersion>11</MinimumVisualStudioVersion>

Require .NET 4.0 for .NET 4.5 app

This is a two part question. I need both parts addressed for a complete answer.
Part I
I have a .NET 4.5 desktop app and I'm wondering if I can deploy it to Windows XP if, within "Requirements" in the app's Installshield project, I tick the ".NET 4.0 Full Package is Installed" checkbox instead of the ".NET 4.5 Full Package is Installed" one.
I read here that:
You can compile an application for .NET 4.5 and run it on the 4.0 runtime – that is until you hit a new feature that doesn’t exist on 4.0. At which point the app bombs at runtime. Say you write some code that is mostly .NET 4.0, but only has a few of the new features of .NET 4.5 like aync/await buried deep in the bowels of the application where it only fires occasionally. .NET will happily start your application and run everything 4.0 fine, until it hits that 4.5 code – and then crash unceremoniously at runtime.
So I know what the ability of my app to run on Windows XP with .NET 4.0 depends on. Let's assume for this question that my app won't crash as described in the above quote.
Part II
I also need to know what effect choosing ".NET 4.0 Full Package is Installed" instead of ".NET 4.5 Full Package is Installed" will have when installing the app onto a machine with .NET 4.5, but not .NET 4.0, installed. Will the Installshield installer see the installed .NET 4.5 package as .NET 4.0 and thus not complain? Or will it be picky and block the app's installation since specifically .NET 4.0 is not installed?
First thing you need to do is change the Target Framework version of your projects from 4.5 to 4.0 and rebuild. If you used any 4.5 specific feature then you'll now find out. You'll need to fix errors.
Part 2 is a non-issue, .NET 4.5 is a replacement for .NET 4.0. The installer is not going to uninstall 4.5 first so it can install 4.0, that would break all existing .NET apps on that machine.

.NET 4 side by side problem

If the host program is compiled with .NET 4, but a referenced dll is .net 3.5.
Then the target deploy machine need to install both .net 4 framework and .net 3.5 framework runtime?
No, in this case the target machine needs only the 4.0 framework runtime.

Does Silverlight 4 require .NET 4?

Do Silverlight 4 applications require that they target .NET 4.
With the delay in .NET 4 and Visual Studio 2010; can I still get the advantages of Silverlight 4 running against the .NET 3.5 framework?
Silverlight does not require any version of .NET (or, put another way, it includes its own sorta-kinda version of .NET; at any rate, it doesn't need any version of the full .NET runtime). It is a completely independent runtime.

Developing Azure .Net 4.0 Applications

Presently .Net 4.0 is not supported on Azure.
This thread indicates that you will not be able to use .Net 4.0 with VS 2010 until it is supported in the cloud.
http://social.msdn.microsoft.com
I'd like a way to start developing Azure applications locally utilizing the new features of .Net 4.0. I am fine with not being able to deploy these applications until Azure officially supports it.
From within the VS IDE; I tried replacing .Net 3.5 application references with newer .Net 4.0 references and Visual Studio crashes.
Does anyone have any suggestions?
Thanks,
Paul
An update to this old thread. .Net 4.0 has been supported since Azure SDK 1.2
Some features from .NET 4.0 can be added to your application through other means. For example, the recently-released Reactive Extensions for .NET 3.5 SP1 includes a back ported release of Parallel Extensions. And the Managed Extensibility Framework contains the Lazy class and Tuple struct. As long as you set "Copy Local" to true on any libraries that you add, your application should run (and deploy) successfully.
Obviously, these aren't all the features that are new in .NET 4.0, and not all of them will can be ported back to .NET 3.5 like these can.