Data di rilascio:21 luglio 2020
Versione: .NET Framework 3,5 e 4,8
L'aggiornamento del 21 luglio 2020 per Windows 10 versione 1809 e Windows Server 2019 include miglioramenti cumulativi per l'affidabilità in .NET 3,5 e 4,8. Ti consigliamo di applicare questo aggiornamento come parte delle normali routine di manutenzione. Prima di installare questo aggiornamento, vedere le sezioni prerequisiti e Riavvia requisito .
Miglioramenti alla qualità e all'affidabilità
CLR1 |
-Una modifica in .NET Framework 4,8 ha regressione alcuni scenari EnterpriseServices in cui un oggetto Apartment a thread singolo può essere considerato come un Apartment a thread multipli e causare un errore di blocco. Questa modifica ora identifica correttamente gli oggetti Apartment a thread singolo come tali ed evita questo errore. -Risolve un problema negli assembly con i dati del profilo IBC che causano l'arresto anomalo dei processi di lavoro NGen e il ritorno alle immagini native complete. -Risolve gli arresti anomali rari che potrebbero verificarsi durante il recapito dell'interruzione del thread. |
|
SQL |
-SqlBulkCopy. WriteToServer può causare l'errore delle transazioni nelle tabelle SQL in memoria. Il client potrebbe visualizzare un'eccezione con il messaggio "Timeout esecuzione scaduta. Il periodo di timeout trascorso prima del completamento dell'operazione o del server non risponde. " SqlBulkCopy. WriteToServer stava inviando un token di attenzione (messaggio di annullamento) dopo l'invio di dati a SQL Server, causando l'interruzione della transazione per le tabelle in memoria. |
|
ASP.NET |
-Usare hash FIPS conformi nei dati di telemetria ASP.Net. -Risolve un problema in cui "non specificato" non è un valore consentito nella configurazione per l'attributo "cookieSameSite" delle sezioni di configurazione per l'autenticazione basata su moduli e per lo stato sessione. |
|
WPF2 |
-Risolve un problema quando il controllo ortografico è abilitato in TextBox o RichTextBox WPF, le parole come "etc.", "e.g." sono identificate come errori di ortografia in modo errato. -Risolve un problema quando alcune applicazioni WPF in grado di monitorare in ogni monitoraggio che vengono eseguite in .NET 4,8 possono occasionalmente verificarsi un arresto anomalo con exceptionSystem. ComponentModel. Win32exception. -Risolve un problema in cui TextBlock viene riversato (prende decisioni di interruzione di riga diverse) durante il rendering e l'hit test, rispetto alla misura. I sintomi includono il testo mancante e FailFast si arresta in modo anomalo durante l'elaborazione di testo programmatico. -Risolve un problema con un errore di rendering del thread causato da HostVisual che disconnette la destinazione nel thread errato. -Risolve un problema con un blocco mentre si scorre un controllo TreeView il cui albero non è uniforme, nel senso che i figli di un nodo sono governati da sottoalberi le cui dimensioni sono molto diverse. -Risolve un problema con un arresto anomalo che può verificarsi quando si chiude una descrizione comando rientrante chiusa dal codice utente. -Quando un HwndHost lascia la struttura ad albero visuale, viene creata un'analisi dello stack. Questo è costoso e in genere non è necessario. La logica viene ora modificata per creare l'analisi dello stack solo quando si verifica la condizione anomala. -Risolve una perdita di memoria in System. Speech. SpeechSynthesizer. -Il comando copia di DataGrid genera un'eccezione se gli Appunti di sistema sono bloccati da un altro processo. Questo si arresta in modo anomalo, perché in genere non c'è codice dell'app per intercettare l'eccezione. Il comportamento della casella di testo (e di altre app come il blocco note, Word e browser) in questa situazione non viene eseguito in modo invisibile all'utente, ma non viene copiato negli Appunti, ma non fa eccezione. Un'app WPF ora può optare per il comportamento impostando <appSettings> <Add Key = "ShouldThrowOnDataGridCopyOrCutFailure" value = "false"/> </appSettings>nel file app. config. -Risolve un problema nella costruzione del modello interno per un documento FixedPage. Il testo è stato visualizzato nell'ordine errato per le operazioni di modifica, ad esempio selezione e copia/incolla. |
|
WCF3 |
-Quando si usa un nome utente di Windows UPN con il formato simile a username@dns. Domain nella proprietà UserName di un NetworkCredential quando si usa NetTcpBinding o NetNamedPipeBinding, WCF suddividerebbe in modo errato il nome utente e il DNS. Domain inserendoli nelle proprietà UserName e Domain. Questa operazione non è valida in alcuni scenari e potrebbe non riuscire a eseguire l'autenticazione. Questa correzione consente di rimuovere la modifica delle credenziali quando si usa un nome utente UPN. La modifica può essere riattivata impostando AppSetting "WCF: enableLegacyUpnUsernameFix" su true. |
|
Raccolte nette |
-Risolve una perdita di memoria in HttpListener. |
|
WinForms |
-Risolve un problema con DataGridView IsReadOnlyaccessibility state: l'Assistente vocale e l'altro strumento accessibile annunciano lo stato della cella di sola lettura di conseguenza. -Risolve una regressione in .NET Framework 4,8 quando le applicazioni che usano il tipo di cella ComboBox DataGridView e hanno optato per l'accessibilità di livello 3, potrebbero verificarsi arresti anomali durante la modifica della cella. -Risolve un problema nel codice di verifica timestamp di ClickOnce RFC3161. |
|
Miglioramenti all'accessibilità di WinForms |
In questa versione aggiungiamo nuovi miglioramenti all'accessibilità in cui l'applicazione può partecipare. Per impostazione predefinita, queste modifiche sono disabilitate. Le applicazioni che optano per l'accesso alle funzionalità di accessibilità introdotte in .NET 4,8 e versioni precedenti possono aggiungere il seguente passaggio di compatibilità al file di configurazione dell'applicazione: "Switch.UseLegacyAccessibilityFeatures.4=false" In particolare, se un'applicazione è destinata a .NET 4,8, aggiungere la sezioneAppContextSwitchOverrides seguente: <?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 un'applicazione è destinata a una versione precedente del Framework e opta per i set di versioni precedenti delle funzionalità di accessibilità, aggiungere un singolo "Switch.UseLegacyAccessibilityFeatures.4=false" passare alla pagina esistente AppContextSwitchOverrides sezione <?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> I miglioramenti all'accessibilità di WinForms inclusi in questa versione sono:
|
1 CLR (Common Language Runtime) 2 Windows Presentation Foundation (WPF) 3 Windows Communication Foundation
Problemi noti di questo aggiornamento
Applicazioni WPF (Windows Presentation Framework) che usano due o più elementi HostVisual appartenenti a un thread comune, in cui vengono chiesti entrambi gli elementi HostVisual per disconnettersi dalla destinazione visiva più o meno nello stesso momento, la posta non riesce con l'errore seguente:
Tipo di eccezione: System. COMException Messaggio: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406) CallStack: il fotogramma superiore è System. Windows. Media. Composition. DUCE + Channel. SyncFlush ()
Soluzioni alternative
Puoi disabilitare la correzione problematica impostando l'opzione AppContext "switch. System. Windows. Media. HostVisual. DisconnectsOnWrongThread" su true, usando uno dei metodi descritti in questa sezione. Questo espone l'app al bug originale, quindi devi rimuovere l'opzione dopo la pubblicazione di una correzione tramite un aggiornamento imminente.
Soluzione alternativa 1
• Aggiungere la voce seguente al file app. config per disabilitare la correzione problematica in una singola applicazione.
<runtime> <AppContextSwitchOverrides value="Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/> </runtime>
Tieni presente che se la configurazione dell'applicazione contiene già una voce per <AppContextSwitchOverrides>, devi aggiungere la nuova impostazione all'interno di tale voce, separata da altre opzioni per un punto e virgola:
<AppContextSwitchOverrides value="Switch.SomeOtherSwitch=true; Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/>
Soluzione alternativa 2
• Applicare la sottochiave del registro di sistema seguente per disabilitare la correzione problematica per tutte le applicazioni WPF nel computer. Avviso Se si modifica il registro di sistema in modo non corretto tramite l'editor del registro di sistema o si usa un altro metodo, potrebbero verificarsi problemi gravi. Questi problemi potrebbero richiedere la reinstallazione del sistema operativo. Microsoft non può garantire che questi problemi possano essere risolti. Modificare il registro di sistema a proprio rischio.
Località: HKEY_LOCAL_MACHINE \Software\Microsoft\. NETFramework\AppContext\ Nome: switch. System. Media. HostVisual. DisconnectsOnWrongThread Digitare: stringa Valore: vero
Tieni presente che nei sistemi operativi a 64 bit devi anche applicare una sottochiave del registro di sistema con lo stesso nome, il tipo e il valore nella posizione: HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\. NETFramework\AppContext\
Soluzione
Stiamo lavorando a una risoluzione che fornirà un aggiornamento in una versione successiva.
Altre informazioni su questo aggiornamento
Gli articoli seguenti contengono informazioni aggiuntive su questo aggiornamento in relazione alle singole versioni di prodotto.
-
4567327Descrizione dell'anteprima dell'aggiornamento cumulativo per .NET Framework 3,5, 4.7.2 e 4,8 per windows 10 versione 1809 e Windows Server 2019 (KB4567327)
Come ottenere e installare l'aggiornamento
Installare questo aggiornamento
Canale di rilascio |
Disponibile |
Passaggio successivo |
Windows Update e Microsoft Update |
Sì |
Per scaricare e installare questo aggiornamento, vedere impostazioni > aggiornare & sicurezza > Windows Updatee quindi selezionare Controlla aggiornamenti. |
Microsoft Update Catalog |
Sì |
Per ottenere il pacchetto autonomo per questo aggiornamento, visitare il sito Web del catalogo Microsoft Update . |
Windows Server Update Services (WSUS) |
No |
È possibile importare manualmente questo aggiornamento in WSUS. Per istruzioni, vedere il catalogo Microsoft Update . |
Informazioni sui file
Per un elenco dei file forniti in questo aggiornamento, scaricare le informazioni sul file per l'aggiornamento cumulativo.
Requisiti
Per applicare questo aggiornamento, è necessario che sia installato .NET Framework 3,5 o 4,8 .
Richiesta di riavvio
È necessario riavviare il computer dopo aver applicato questo aggiornamento in caso di utilizzo di eventuali file interessati. È consigliabile chiudere tutte le applicazioni basate su .NET Framework prima di applicare questo aggiornamento.
Come ottenere assistenza e supporto per questo aggiornamento
-
Guida per l'installazione degli aggiornamenti: domande frequenti su Windows Update
-
Proteggersi online e a casa: supporto per la sicurezza di Windows
-
Supporto locale in base al proprio paese: supporto internazionale