Last Updated: 9/14/2017
We are happy to announce the Microsoft .NET Framework 4.7 is now available on Windows Update, Windows Server Update Services (WSUS), and the Microsoft Update (MU) Catalog for the following operating systems:
Client platforms: Windows 7 SP1, Windows 8.1, Windows 10 Anniversary Update (Version 1607)
Server platforms: Windows Server 2008 R2 SP1, Windows Server 2012, Windows Server 2012 R2 and Windows Server 2016
Here’s are the Knowledge Base Article numbers for the WU/WSUS/Catalog release:
.NET 4.7 Redistributable:
- .NET Framework 4.7 for Windows 7/Windows Server 2008 R2: KB3186497
- .NET Framework 4.7 for Windows Server 2012: KB3186505
- .NET Framework 4.7 for Windows 8.1/Windows Server 2012 R2: KB3186539
- .NET Framework 4.7 for Windows 10 Version 1607/Windows Server 2016: KB3186568
.NET 4.7 Language Pack:
- .NET Framework 4.7 Language Packs for Windows 7/ Windows Server 2008 R2: KB3186499
- .NET Framework 4.7 Language Packs for Windows Server 2012: KB4015882
- .NET Framework 4.7 Language Packs for Windows 8.1/Windows Server 2012 R2: KB3186606
- .NET Framework 4.7 Language Packs for Windows 10 Version 1607/Windows Server 2016: KB3186607
An offline installer is available for the same platforms. The .NET Framework 4.7 is included in the Windows 10 Creators Update.
Update on September 14, 2017, for Windows 10 LTSB and Windows Server 2016:
We recently updated the offering for following .NET Framework 4.7 Windows Update bundles for Windows 10 Version 1607 and Windows Server 2016. The .NET Framework 4.7 will no longer be offered through Automatic Updates or actively available on the WSUS channel for computers on Windows Long-Term Servicing Branch (LTSB), including both Windows 10 LTSB clients and Windows Server 2016. There is no change for other Windows non-LTSB computers.
- .NET Framework 4.7 for Windows 10 Version 1607/Windows Server 2016: KB3186568
- .NET Framework 4.7 Language Packs for Windows 10 Version 1607/Windows Server 2016: KB3186607
Windows 10 LTSB clients and Windows Server 2016-based computers can still install the .NET Framework 4.7 from the Microsoft Download Center. On the Microsoft Update Catalog, we have also provided new .NET Framework 4.7 Windows Update bundles specifically for LTSB computers to allow enterprises to import the updates. There is no difference in the underlying package, but the new bundles only apply to LTSB computers.
How is this release available?
Automatic Updates
.NET 4.7 is being offered as a Recommended update. At this time we’re throttling the release similar to what we have done with previous .NET Framework releases. Over the next few weeks we will be closely watching install telemetry and your feedback about any regressions or other issues and based on these we will slowly open up throttling.
While the release is throttled, you can use the Check for updates feature to get .NET Framework 4.7.
Note: throttled updates are offered at a lower priority than unthrottled updates, so if you have other Recommended or Critical updates pending those will be offered before this update.
Once we open up throttling, in most cases you will get the 4.7 update with no further action necessary. If you have modified your AU settings to notify but not install you should see a notification in the system tray about this update.
The deployment will be rolled out to various geographies globally over several weeks. So, if you do not get the update offered on the first day and do not want to wait until the update is offered, you can use the Check for updates feature, as described above.
Windows Server Update Services (WSUS) and Catalog
WSUS administrators will see this update in their WSUS admin console. The update is also available in the MU Catalog for download and deployment.
When you synchronize your WSUS server with Microsoft Update server (or use the Microsoft Update Catalog site for importing updates), you will see the updates for .NET Framework 4.7 published for each platform.
More Information
.NET 4.7 DirectX dependency
The .NET Framework 4.7 update for Windows 7 SP1, Windows Server 2008 R2 SP1 and Windows Server 2012 require the DirectX dependency (%windir%\system32\d3dcompiler_47.dll) to be present before .NET 4.7 will be offered to the PC. This ensures that the PC is never in the situation where .NET 4.7 is present without the DirectX dependency satisfied since that would be a broken/unsupported state.
On a related note, the DirectX dependency is available in the June 2017 Monthly Rollup as a Recommended update under the following Knowledge Base Articles:
The DirectX dependency is also available outside of the Monthly Rollup as an independent/standalone package in the Microsoft Update Catalog here in case you need to install this independently.
Language Packs
In addition to the language neutral package the .NET Framework 4.7 Language Packs are also available on Windows Update. These can be used to if you have a previous language pack for .NET installed as well as if you don’t, but instead have a localized version of the base operating system or have one or more Multilingual User Interface (MUI) pack installed.
Blocking the automatic deployment of .NET 4.7
Enterprises may have client machines that connect directly to the public Windows Update servers rather than to an internal WSUS server. In such cases, an administrator may have a need to prevent the .NET Framework 4.7 from being deployed to these client machines in order to allow testing of internal applications to be completed before deployment.
In such scenarios, administrators can deploy a registry key to machines and prevent the .NET Framework 4.7 from being offered to those machines. More information about how to use this blocker registry key can be found in the following Microsoft Knowledge Base article:
KB4024204: How to temporarily block the installation of the .NET Framework 4.7 and its corresponding language packs
Updated 6/19/2017: Added knowledge base article numbers for the .NET 4.7 redistributable and language packs.

What happens next patchdays if we install .net 4.7 on Win10 v1607? Do we get extra updates for .net 4.7 offered via WU?
In w10 1507 with netfx461, mouthly update included both netfx46 and netfx461 fix, it may be similar in w10 1607
That is correct – once you install .NET 4.7 on a supported platform if there are updates for that platform you will receive those updates via WU.
Is required to re-check Windows Updates to get any pending .NET 4.7 fixes ?
Typically, when you scan WU you’re only offered updates for the products installed on your PC. Lets say you scan WU the first time, you have .NET 4.6.2 installed and you are offered .NET 4.7. At this time since .NET 4.7 has not yet been actually installed you will not be offered updates for .NET 4.7. Once the .NET 4.7 product is installed you should scan WU to install any updates offered on top of .NET 4.7 in the future.
I don’t see the KB numbers for the installers being released. Can you add or supply them? My WSUS server isn’t showing them after a sync is being forced.
David, the post has been updated to include the KB numbers for the packages.
It is sad that Exchange team has announced to ask admins to stop upgrading .NET Framework 4.7 to the Exchange Servers. Link here: https://blogs.technet.microsoft.com/exchange/2017/06/13/net-framework-4-7-and-exchange-server/
William, I’ve responded to your comment about Exchange Server below.
Will .NET 4.6.2 be released via WSUS? Its interesting to se that 4.7 made it before 4.6.2.
Mark, at this time we’re not planning on shipping .NET 4.6.2 via WU. .NET 4.7 is already available on WU, and .NET 4.7 is an in place update for all previous .NET 4.x releases including .NET 4.6.2 and contains the latest features and improvements including stability, reliability and security fixes.
Some of you noticed and pointed out a message from the Exchange team last week about Exchange Server not being supported on .NET 4.7. You asked what this meant, and if there were issues blocking Exchange Server. We want to share what happened. For each new .NET Framework release we work with products across Microsoft to validate compatibility of in-market products running on the new .NET version, this includes Exchange Server. We also do the same with major ISVs. We always aim to get this validation done before we ship, but in this case the timing didn’t line up as we had hoped. Support for Exchange Server will be announced soon once the validation work is completed. We hope to better on this front in the future by engaging earlier with our partner teams so validation for those products can be completed before we ship.
When will this breaking issue be fixed?
https://stackoverflow.com/questions/44580055/wpf-comexception-crashes-application-at-startup-started-today
we had the same issue, please provide a bug fix!
We just hit this problem as well. Hoping this will be fixed soon.
All of my customers say they cant touch in the machine for this bug.
When I am trying to install this update: “Microsoft .NET Framework 4.7 for Windows 10 Version 1607 and Windows Server 2016 for x64 (KB3186568)” I am getting a message saying after 40% it is saying ” windows couldn’t configure one or more system components” and asking me to click “ok” and it is going to the previous version of installation.
Same here in Windows Server 2012 R2.
What can i do? The Problem happens with Windows Update and also with the Offline installer.
@Russel, @Stefan: if you can send logs (To: dotnetfeedback @ microsoft.com) from your box using the tool from http://aka.ms/vscollect, then we can have somebody look at the same and find out more.
Thanks,
Vivek Mishra (MSFT)
I’m seeing an issue that others are reporting as well.
It appears that the methodology to block the update as outlined in KB4024204 does not work for Windows 2016. After applying the registry change, rebooting, waiting several days, rebooting, waiting again it still offers the 4.7 update. The wonderful new Windows 2016 Update screen does not allow you to deselect the update as you would expect to be able to do. Thanks again Microsoft.
@sime3000, we are unable to repro any issue with blocking offering of .NET 4.7 on Windows Server 2016 after applying the registry key as per KB4024204 (https://support.microsoft.com/help/4024204). Can you maybe contact dotnetfeedback @ microsoft.com and share the reghive under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP?
Thanks,
Thanks for your email Vivek.
It took about 5 days and several reboots on two different Windows 2016 servers for Windows Update to stop offering the .NET 4.7 update. Not acceptable in a production environment and while you’re waiting it prevents you from installing other pending updates since you cant deselect individual updates as you could in previous operating systems.
On our 2012 R2 servers the 4.7 block took effect immediately. On our 2016 servers we needed to wait 5 day. How long should we expect to wait for the 4.7 registry block to take effect after it is applied ?
Hello,
I am from Intuit. With recent .Net 4.7 updates, we are seeing lot of customers are facing issues with our App like – crash, COM errors etc. When .Net 4.7 is uninstalled manually and point back to .Net 4.6.2, issues are getting resolved. I have seen similar issues faced by other Apps.
We need to look at the issue with high importance. Can you please share any Microsoft contacts where we can directly have a meeting or discussion. It is crucial for us now as customer call volume is getting huge.
Can you email us directly at dotnetfeedback _at_microsoft_dot_com? We’d like to take a look at the issue you’re seeing with Intuit products.
We are also starting to see tech support calls come in with .NET 4.7 breaking existing running applications. Uninstalling or sometimes reinstalling 4.7 fixes the issue. This could become a nightmare.
It looks like the 4.7 version of System.Windows.Interop.OSVerstionHelper is trying to call into 4.6.1 version of ‘PresentationNative_v0400.dll and failing to find the necessary (new) entry point.
****** Exception Information ******
System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. —> System.TypeInitializationException: The type initializer for ‘System.Windows.Interop.OSVersionHelper’ threw an exception. —> System.EntryPointNotFoundException: Unable to find an entry point named ‘IsWindows10RS2OrGreater’ in DLL ‘PresentationNative_v0400.dll’.
at System.Windows.Interop.OSVersionHelper.IsWindows10RS2OrGreater()
at System.Windows.Interop.OSVersionHelper..cctor()
Why in the world did you pull the updates for Windows 10 LTSB and Server 2016? Windows 10 LTSB I can sort of appreciate but pulling it for Server 2016 makes zero sense. So you’re saying that Server 2008 R2 – Server 2012 R2 and WIndows 7 – Windows 10 (non-LTSB) get this via WU but the most recent version of your server product cannot? That’s not a particularly great experience for the enteprise.
I received some customer‘s feedback that they had trouble running my WPF application in Windows 7 SP1 with an error tip missing D3DCOMPILER_47.dll.
I found that their CLR versions are all 4.0.30319.42000 but this version is only been contained in .Net Framework 4.7. When I remote control their computers I found that most of the updates in September are failed which contains the KB4022719, the June 2017 Monthly Rollup that fixes the DirectX dependency.
Obviously, I cannot remote control all of my customers which suffering from this issue around the world. So how can I help them to fix this?
In this month, I receive some of my customers feedback that their machine lost D3DCOMPILER_47.dll that make they cant use wpf app. But when I remote control their machine that I found some of the windows updates has not installed. I don’t think I cant fix all of my customers’ machines. Can you help me?
Edit:
I found that .Net Framework 4.6/4.6.1/4.6.2/4.7 all contains CLR version 4.0.30319.42000. Does this means that these updates don’t change the CLR version numbers across these .Net Framework versions?
Then, which KBxxx number is the correct one that makes the Windows 7 SP1 WPF apps depend on D3DCOMPILER_47.dll?