This Quality Rollup for Windows 7 Service Pack 1 (SP1) and Windows Server 2008 R2 SP1 includes cumulative reliability improvements in .NET Framework 4.6, 4.6.1, 4.6.2, and 4.7. Additionally for Windows Server 2008, this update includes cumulative reliability improvements in the .NET Framework 4.6. We recommend that you apply this update as part of your regular maintenance routines. Before you install this update, see the Prerequisites and Restart requirement sections.
- All updates for .NET Framework 4.6, 4.6.1, 4.6.2, and 4.7 require the d3dcompiler_47.dll update to be installed. We recommend that you install the included d3dcompiler_47.dll update before you apply this update. For more information about the d3dcompiler_47.dll update, see KB 4019990 for Windows 7 SP1 and Windows Server 2008 R2 SP1. Or, see KB 4019478 for Windows Server 2008.
- If you install a language pack after you install this update, you must reinstall this update. Therefore, we recommend that you install any language packs that you need before you install this update. For more information, see Add language packs to Windows.
Quality and reliability improvements
Note This update also contains cumulative updates that were released previously starting from October 11, 2016.
Description of the improvements
After you install the September 12, 2017, .NET Security and Quality Rollups that apply to the .NET Framework 4.6, 4.6.1, 4.6.2, and 4.7, you may experience rendering issues in Windows Presentation Foundation (WPF) applications that are run in Windows Services.
When this issue occurs, applications that render WPF visuals onto a bitmap, for example by using RenderTargetBitmap, generate black or transparent images. This can occur if the application is running in the following situations:
For more information about this issue, see the following article in the Microsoft Knowledge Base:
4043601 Rendering issues after the September 12, 2017, .NET Security and Quality Rollups are installed
WPF applications that run in Windows Services
This fix automatically addresses this issue and reinstates rendering when a WPF application is run in Windows Services.
If a WPF application is a long-running process that is hosted in Windows Services, it might be susceptible to a performance bug in WPF that causes it to consume disproportionate amount of CPU cycles in relation to their actual workload. Frequently, these applications eventually crash. An example of a long-running process in one that is not primarily intended to use WPF rendering in short bursts only, such processes as rendering occasional bitmaps.
The only supported solution in WPF for fixing this problem includes disabling rendering activities when no valid display devices are found. Applications that run in Windows Services can opt in to this performance fix by setting the Switch.System.Windows.Media.ShouldRenderEvenWhenNoDisplayDevicesAreAvailable AppContext switch. To do this, use one of the following methods.
The following articles provide information about supported .NET Framework versions for this Windows version. This includes the month and year of release, update replacement information, and help and support information for the update.
For Windows 7 SP1 and Windows Server 208 R2 SP1
4043766 October 2017 Security and Quality Rollup for .NET Framework 3.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, and 4.7 for Windows 7 SP1 and Windows Server 2008 R2 SP1 (KB 4043766)
For Windows Server 2008 SP2
4043768 October 2017 Security and Quality Rollup for .NET Framework 2.0 SP2, 4.5.2, and 4.6 updates for Windows Server 2008 SP2 (KB 4043768)
How to get this update
This update is available through Windows Update. When you turn on automatic updating, this update will be downloaded and installed automatically. For more information about how to get security updates automatically, see Windows Update: FAQ.
Microsoft Update Catalog
To get the stand-alone package for this update, go to the Microsoft Update Catalog website.
Windows Software Update Services (WSUS)
On your WSUS server, follow these steps:
- Click Start, click Administrative Tools, and then click Microsoft Windows Server Update Services 3.0.
- Expand ComputerName, and then click Action.
- Click Import Updates.
- WSUS opens a browser window in which you may be prompted to install an ActiveX control. You must install the ActiveX control to continue.
- After the ActiveX control is installed, you see the Microsoft Update Catalog screen. For Windows 7 SP1 and Windows Server 2008 R2 SP1, type 4043766. For Windows Server 2008 R2 SP1, type 4043768 in the Search box. Then, click Search.
- Locate the .NET Framework packages that match the operating systems, languages, and processors in your environment. Click Add to add them to your basket.
- After you select all the packages that you need, click View Basket.
- Click Import to import the packages to your WSUS server.
- To return to WSUS, click Close after the packages are imported.
The updates are now available for installation through WSUS.
To apply this update, you must have the following installed:
- For Windows 7 SP1 and Windows Server 2008 R2 SP1, .NET Framework 4.6, 4.6.1, 4.6.2 or 4.7.
- For Windows Server 2008, .NET Framework 4.6.
You must restart the computer after you apply this update if any affected files are being used. We recommend that you exit all .NET Framework-based applications before you apply this update.
Update replacement information