Release Date:July 13, 2021

Version: .NET Framework 4.8

The July 13, 2021 update for Windows 10, version 1607 and Windows Server, version 2016 includes cumulative reliability improvements in .NET Framework 4.8. 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.

Quality and reliability improvements

WPF1

- Addresses an issue affecting a DataGrid contained in an outer ScrollViewer.

- Addresses a crash due to ElementNotAvailableException in a ListView with custom data-item automation peers.

CLR2

- When the process is not under high memory pressure it tends to favor doing BGCs over doing full compacting GCs. This is usually desirable but if the app behavior changes dramatically, it could cause much of the fragmentation in older generations (ie, gen2 and LOH) to be unused. You can collect GC ETW events which tell you how much fragmentation there is in gen2 and LOH and verify if you are in this situation.

This version introduces a new GC config GCConserveMemory to detect this situation and be conservative about memory usage and not leave so much fragmentation unused.

You can specify it in the app.config file

<configuration>   <runtime>     <GCConserveMemory enabled="N"/>   </runtime> </configuration> where N is an integer value between 0 and 9 (inclusive). 0 is the default. Not specifying this config or specifying it as 0 does not change GC tuning. Specifying a non zero value indicates to the GC how conservative you want GC to be about memory usage – the higher the value is, the more conservative GC will be, ie, the smaller the heap is. We suggest you to experiment with different numbers to see which value works best for you – usually we start with a value between 5 and 7. Note that if we detect LOH has too much fragmentation it will be compacted automatically.

Winforms

- Addresses an issue in Property Grid control to prevent incorrect data read in some scenarios in 64 bit processes.

- Addresses an issue where System.Drawing double frees allocated memory when failing to get printer settings.

ClickOnce

- Addresses a regression introduced in previous updates. We now honor WinTrust policy setting "Ignore timestamp revocation checks" setting when validating timestamps in ClickOnce manifests.

1 Windows Presentation Foundation (WPF)2 Common Language Runtime (CLR)

How to get this update

Install this update

Release Channel

Available

Next Step

Windows Update and Microsoft Update

Yes

To download and install this update, go to Settings > Update & Security > Windows Update, and then select Check for updates.

Microsoft Update Catalog

Yes

To get the standalone package for this update, go to the Microsoft Update Catalog website.

Windows Server Update Services (WSUS)

Yes

This update will automatically sync with WSUS if you configure Products and Classifications as follows:

Product:Windows 10, version 1607 and Windows Server, version 2016

Classification: Updates

File information

For a list of the files that are provided in this update, download the file information for cumulative update.

Prerequisites

To apply this update, you must have .NET Framework 4.8 installed.

Restart requirement

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.

How to obtain help and support for this update

Known issues in this update

Microsoft is not currently aware of any issues in this update.

Need more help?

Want more options?

Explore subscription benefits, browse training courses, learn how to secure your device, and more.

Communities help you ask and answer questions, give feedback, and hear from experts with rich knowledge.