Applies To.NET

Data do lançamento:21 de julho de 2020

Versão: .NET Framework 3,5 e 4,8

A atualização de 21 de julho de 2020 para Windows 10 versão 1903 e Windows Server 1903 RTM e Windows 10, versão 1909 e Windows Server, versão 1909 inclui melhorias de confiabilidade cumulativas no .NET 3,5 e 4,8. Recomendamos que você aplique esta atualização como parte de suas rotinas de manutenção regulares. Antes de instalar esta atualização, consulte as seções pré-requisitos e requisitos de reinicialização .

Melhorias de qualidade e confiabilidade

CLR1

-Uma alteração no .NET Framework 4,8 regressivou determinados cenários EnterpriseServices em que um objeto Apartment de thread único pode ser tratado como um apartment de vários threads e leva a uma falha de bloqueio. Agora, essa alteração identifica corretamente os objetos Apartment de thread único e evita essa falha.

-Aborda um problema em assemblies com dados de perfil do IBC fazendo com que processos de trabalho NGen falhem e retornem para imagens nativas completas.

-Corrige falhas raras que podem ocorrer durante a entrega de anulação de thread.

Server

-SqlBulkCopy. WriteToServer pode causar falhas em transações de tabelas SQL na memória. O cliente pode ver uma exceção com a mensagem "tempo limite de execução expirado. O período de tempo limite decorrido antes da conclusão da operação ou o servidor não está respondendo. " SqlBulkCopy. WriteToServer estava enviando um token de atenção (mensagem de cancelamento) após o envio de dados ao SQL Server, fazendo com que o servidor anule a transação para tabelas na memória.

ASP.NET

-Usar hashes compatíveis com FIPS em dados de telemetria do ASP.Net.

-Corrige um problema em que "não especificado" não era um valor permitido em config para o atributo ' cookieSameSite ' das seções de autenticação de formulários e configuração de estado de sessão.

WPF2

-Corrige um problema quando a verificação ortográfica está habilitada na caixa de texto do WPF ou RichTextBox, as palavras como "etc.", "por exemplo" são identificadas como erros de ortografia incorretamente.

-Corrige um problema quando alguns aplicativos WPF com reconhecimento por monitor que são executados no .NET 4,8 podem ocasionalmente encontrar uma falha com exceptionSystem. ComponentModel. Win32exception.

-Trata de um problema em que o TextBlock reflui (torna as decisões de quebra de linha diferentes) durante a renderização e teste de acertos, em vez de medir. Os sintomas incluem texto ausente e FailFast falha durante o processamento de texto programático.

-Corrige um problema com uma falha de thread de renderização causada por HostVisual desconectando seu destino no thread errado.

-Aborda um problema com uma falha durante a rolagem de um TreeView cuja árvore é não uniforme, no sentido de que o filho do nó especificado regula subárvores cujos tamanhos são bem diferentes.

-Aborda um problema com uma falha que pode ocorrer ao fechar uma dica de ferramenta que é fechada novamente pelo código do usuário.

-Quando um HwndHost deixa a árvore visual, um rastreamento de pilha é criado. Isso é caro e normalmente desnecessário. A lógica agora é alterada para criar o rastreamento de pilha somente quando ocorre a condição anômala.

-Corrige um vazamento de memória em System. Speech. SpeechSynthesizer.

-O comando copiar do DataGrid lança uma exceção se a área de transferência do sistema estiver bloqueada por outro processo. Isso falha, pois normalmente não há código do aplicativo na pilha para detectar a exceção. O comportamento da caixa de texto (e outros aplicativos, como o bloco de notas, o Word, os navegadores) nesta situação é fazer uma falha silenciosa-nada é copiado para a área de transferência, mas sem exceção. Agora, um aplicativo do WPF pode aceitar esse comportamento definindo <appSettings> <Add Key = "ShouldThrowOnDataGridCopyOrCutFailure" value = "false"/> </appSettings>em seu arquivo app. config.

-Aborda um problema ao construir o modelo interno para um documento FixedPage. Algum texto estava aparecendo na ordem errada para fins de edição de operações, como seleção e copiar/colar.

WCF3D

-Ao usar um nome de usuário UPN do Windows com o formato semelhante a username@dns. Domain na propriedade username de um NetworkCredential ao usar NetTcpbinding ou NetNamedPipeBinding, o WCF dividiria incorretamente o nome de usuário e o DNS. Domain colocando-os nas propriedades UserName e domain. Isso é inválido em alguns cenários e resultaria em falha na autenticação. Esta correção remove a modificação de credenciais ao usar um nome de usuário UPN. A modificação pode ser habilitada novamente definindo o AppSetting "WCF: enableLegacyUpnUsernameFix" como true.

Bibliotecas de rede

-Corrige um vazamento de memória em HttpListener.

Winforms

-Aborda um problema com o estado IsReadOnlyaccessibility do DataGridView: o narrador e outras ferramentas acessíveis anunciam o status de célula somente leitura de acordo.

-Corrige uma regressão no .NET Framework 4,8 quando os aplicativos que usam o tipo de célula da ComboBox DataGridView e se aceitaram na acessibilidade do nível 3 podem sofrer falha intermitente durante a edição da célula.

-Corrige um problema no código de verificação de carimbo de data/hora RFC3161 do ClickOnce.

Melhorias de acessibilidade do WinForms

Nesta versão, adicionamos novas melhorias de acessibilidade às quais seu aplicativo pode aceitar. Por padrão, essas alterações estão desabilitadas. Os aplicativos que optarem pelos recursos de acessibilidade introduzidos no .NET 4,8 e anteriores podem adicionar a seguinte opção de compatibilidade ao arquivo de configuração do aplicativo:

"Switch.UseLegacyAccessibilityFeatures.4=false"

Especificamente, se um aplicativo for direcionado para .NET 4,8, adicione a seguinte seçãoAppContextSwitchOverrides :

<?xml version="1.0" encoding+"utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Versionv4.8"/> </startup> <runtime> <!-- AppContextSwitchOverrides value attribute is in the form of key1=true|false;key2=true|false --> <AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures.4=false" /> </runtime> </configuration>

Se um aplicativo for direcionado a uma versão anterior da estrutura e optar pelos conjuntos de recursos de acessibilidade anteriormente, adicione um único "Switch.UseLegacyAccessibilityFeatures.4=false" alternar para o existente AppContextSwitchOverrides seção

<?xml version="1.0" encoding+"utf-8" ?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Versionv4.7"/> </startup> <runtime> <!-- AppContextSwitchOverrides value attribute is in the form of key1=true|false;key2=true|false --> <AppContextSwitchOverrides value="Switch.UseLegacyAccessibilityFeatures=false|Switch.UseLegacyAccessibilityFeatures.2=false|Switch.UseLegacyAccessibilityFeatures.3=false|Switch.UseLegacyAccessibilityFeatures.4=false"/> </runtime> </configuration>

As melhorias de acessibilidade do WinForms incluídas nesta versão são:

-Corrige um problema com a apresentação de itens de controle de PropertyGrid e categorias de estado expandido/recolhido por leitores de tela.

-Atualização dos padrões acessíveis do controle de grade de propriedade e seus elementos internos.

-Atualização dos nomes acessíveis dos elementos internos do controle de grade de propriedade para anunciar esses elementos corretamente por meio do leitor de tela.

-Endereça o retângulo delimitado Propriedades acessíveis para os controles PropertyGridView

-Habilita os leitores de tela a anunciar o estado expandido/recolhido da célula da ComboBox DataGridView corretamente.

1 CLR (Common Language Runtime)2 Windows Presentation Foundation (WPF)3D Base de comunicação do Windows

Problemas conhecidos nesta atualização

Os aplicativos do Windows Presentation Framework (WPF) que usam dois ou mais elementos HostVisual que pertencem a um thread comum, onde os dois elementos do HostVisual são solicitados a se desconectarem do seu destino Visual praticamente ao mesmo tempo, o email falha com o seguinte erro:

Tipo de exceção: System. COMException Mensagem: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406) Pilha de chamadas: o quadro superior é System. Windows. Media. composição. DEDUZI + Channel. SyncFlush ()

Soluções alternativas

Você pode desativar a correção problemática definindo a opção AppContext "switch. System. Windows. Media. HostVisual. DisconnectsOnWrongThread" como verdadeiro, usando um dos métodos descritos aqui.  Isso expõe o aplicativo ao bug original, portanto, você deve remover a opção quando uma correção for publicada por meio de uma atualização futura.

Solução Alternativa 1

• Adicione a seguinte entrada ao arquivo app. config para desativar a correção problemática em um único aplicativo.

<runtime>     <AppContextSwitchOverrides value="Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/> </runtime>

Observe que, se a configuração de seu aplicativo já tiver uma entrada para <AppContextSwitchOverrides>, você precisará adicionar a nova configuração dentro dessa entrada, separada de outras opções por um ponto e vírgula:

   <AppContextSwitchOverrides value="Switch.SomeOtherSwitch=true; Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/>

Solução alternativa 2

• Aplicar a seguinte subchave do registro para desativar a correção problemática para todos os aplicativos do WPF na máquina.  Avisa Sérios problemas podem ocorrer se você modificar o registro incorretamente usando o editor do registro ou usando outro método. que talvez exijam a reinstalação do sistema operacional. A Microsoft não pode garantir que esses problemas possam ser resolvidos. Todo e qualquer risco decorrente da modificação do Registro é responsabilidade do usuário.

Local: HKEY_LOCAL_MACHINE \Software\Microsoft\. NETFramework\AppContext\ Name: switch. System. Media. HostVisual. DisconnectsOnWrongThread Tipo: cadeia de caracteres Valor: true

Observe que em sistemas operacionais de 64 bits, você também precisa aplicar uma subchave do registro com o mesmo nome, tipo e valor no local: HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\. NETFramework\AppContext\

Resolução

Para solucionar esse problema, instale a atualização para .NET Framework 3,5 e 4,8 para Windows 10 versão 1903 e Windows Server 1903 RTM e Windows 10, versão 1909 e Windows Server, versão 1909 KB4580980.

 

Como obter e instalar a atualização

Instale esta atualização

Liberar canal

Não

Próxima etapa

Windows Update e Microsoft Update

Sim

Para baixar e instalar esta atualização, acesse configurações > atualização & segurança > Windows Updatee, em seguida, selecione verificar se há atualizações.

Catálogo do Microsoft Update

Sim

Para obter o pacote autônomo dessa atualização, acesse o site do Catálogo do Microsoft Update.

WSUS (Windows Server Update Services)

Não

Você pode importar esta atualização para o WSUS manualmente. Consulte o catálogo do Microsoft Update para obter instruções.

 

Informações sobre os arquivos

Para obter uma lista dos arquivos fornecidos nesta atualização, baixe as informações do arquivo para atualização cumulativa.

Pré-requisitos

Para aplicar esta atualização, você deve ter o .NET Framework 3,5 ou 4,8 instalado.

Necessidade de reinicialização

Você deverá reinicializar o computador depois de aplicar esta atualização se qualquer arquivo afetado estiver sendo usado. Recomendamos sair de todos os aplicativos baseados no .NET Framework antes de aplicar essa atualização.

Como obter ajuda e suporte para esta atualização

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.