Updated 2017/05/04: Added Q&A section
Updated 2017/05/22: Updated information about the DirectX dependency to note that the dependency is now available on Windows Update, WSUS and the MU Catalog.
Today, we are announcing the general availability of the .NET Framework 4.7. The .NET Framework 4.7 was released as part of Windows 10 Creators Update a month ago. You can now install the .NET Framework 4.7 on other versions of Windows.
You can download the .NET Framework 4.7:
The .NET Framework 4.7 includes improvements in several areas:
- High DPI support for Windows Forms applications on Windows 10
- Touch support for WPF applications on Windows 10
- Enhanced cryptography support
- Support for C# 7 and VB 15, including ValueTuple
- Support for .NET Standard 1.6
- Performance and reliability improvements
Please see the Announcing the .NET Framework 4.7 blog post to learn more about each of these improvements.
You can see the complete list of improvements in the .NET Framework 4.7 release notes.
We recently released .NET Application Architecture Guidance. Read these guides to get practical advice, best practices, and sample applications for using .NET with microservices, Docker containers, Kubernetes, Xamarin, ASP.NET, Azure, Service Fabric, and more.
The .NET Framework 4.7 is supported on the following Windows versions:
- Windows 10 Creators Update (included in-box)
- Windows 10 Anniversary Update
- Windows 8.1
- Windows 7 SP1
The .NET Framework 4.7 is supported on the following Windows Server versions:
- Windows Server 2016
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2 SP1
The .NET Framework 4.7 now uses DirectX 11 components for WPF. These components are available as part of the operating system in recent versions of Windows including Windows 10, Windows Server 2016, Windows 8.1, and Windows Server 2012 R2.
You must install an additional DirectX component in order to install the .NET Framework 4.7 on Windows 7 SP1, Windows Server 2008 R2 SP1 and Windows Server 2012. The installation includes a single .dll that will get added to your system. It will only be used by WPF applications. It is not possible to install the .NET Framework 4.7 without installing this component.
The DirectX dependency is now available in the Preview of Monthly Rollup released via Windows Update on May 16, 2017. The Monthly Rollup is also available for deployment via WSUS and the Microsoft Update Catalog under the following Knowledge Base Article ids:
The DirectX dependency is also available outside of the Monthly Rollup as an independent/standalone package in the Microsoft Update Catalog. Due to its relatively smaller size as compared to the Monthly Rollup package, this standalone package may be preferable for ISVs that need to redistribute the .NET Framework 4.7 with their application.
Please see the following for more information: The .NET Framework 4.7 installation is blocked on Windows 7, Windows Server 2008 R2 and Windows Server 2012 because of a missing d3dcompiler update
We’ve had some great questions since publishing this post. Thanks for asking! Here are the answers:
Will the .NET Framework 4.7 be made available on Windows Update?
Yes. We are working on this now. We expect this to happen within 3 months at the most.
This new DirectX dependency is a surprise and a deployment challenge. Will that get better?
This DirectX component is now available on the Microsoft Update Catalog and also included in the May Preview of the Monthly rollup available on Windows Update and WSUS/Catalog starting 5/16/2017.
We did not include this dependency within the .NET Framework installer due to reliability and user experience reasons. The DirectX component and the .NET Framework 4.7 are separate Windows installers. In the case that a reboot was already pending on the system, the DirectX component (needs to be installed first) would be made a pending update while the .NET Framework 4.7 component would not be (only 1 pending update is allowed), requiring the user to manually run the .NET Framework installer after the reboot. The user would not be given clear instructions that they need to do this due to the way this installation technology works. We have a long history with reboot challenges and chose to make .NET Framework a singular component so that it would behave in an intuitive fashion with respect to reboots. As a result, the DirectX component is a pre-requisite not an included component.
Can I use DirectX 11 or 12 with WPF now?
This new DirectX dependency is quite targeted. It does not enable the use of later versions of DirectX with WPF. The feedback on wanting to use later versions of DirectX has been passed on to the WPF team.
Thanks for trying out the .NET Framework 4.7. Please tell us what you think about the release and how it is working for you in your environment. Please share your feedback in the comments below or on GitHub.