This Quality Rollup for Windows 8.1, Windows RT 8.1 and Windows Server 2012 R2 includes cumulative reliability improvements in .NET Framework 4.6, 4.6.1, 4.6.2, and 4.7. 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 Windows RT 8.1, Windows 8.1, and Windows Server 2012 R2 require update 2919355 to be installed. We recommend that you install update 2919355 on your Windows RT 8.1-based, Windows 8.1-based, or Windows Server 2012 R2-based computer so that you receive updates in the future.
- 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 on 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 article provides 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.
4043767 October 2017 Security and Quality Rollup for .NET Framework 3.5, 4.5.2, 4.6, 4.6.1, 4.6.2 and 4.7 updates for Windows 8.1, Windows 8.1 RT, and Windows Server 2012 R2 (KB 4043767)
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. Type 4043767 in the Search box, and 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 .NET Framework 4.6, 4.6.1, 4.6.2, or 4.7 installed.
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