Date de publication :21 juillet 2020
Version : version 3,5 et 4,8 du .NET Framework
La mise à jour de 2020 du 21 juillet pour Windows 10 version 1809 et Windows Server 2019 inclut des améliorations de la fiabilité cumulées dans .NET 3,5 et 4,8. Nous vous recommandons d’appliquer cette mise à jour dans le cadre de vos routines de maintenance normales. Avant d’installer cette mise à jour, consultez les sections conditions préalables et Configuration requise .
Améliorations de la qualité et de la fiabilité
CLR1 |
-Une modification de .NET Framework 4,8 a régressé certains scénarios d’EnterpriseServices dans lesquels un objet cloisonné de thread unique risque d’être traité en tant que thread multithread et de provoquer une défaillance de blocage. Cette modification identifie désormais correctement les objets cloisonnés à thread unique comme tels et évite cet échec. -Résout un problème dans les assemblys dont les données de profil d’IBC sont à l’origine du blocage des processus du convertisseur Ngen et de la reprise d’images natives complètes. -Traite les rares blocages qui peuvent se produire lors de la remise d’abandon de thread. |
|
SQL |
-SqlBulkCopy. WriteToServer peut entraîner l’échec de transactions dans les tables SQL en mémoire. Le client a pu voir une exception avec le message « délai d’exécution expiré ». Le délai d’expiration écoulé avant la fin de l’opération ou le serveur ne répond pas. " SqlBulkCopy. WriteToServer envoyait un jeton d’attention (message d’annulation) après avoir envoyé des données à SQL Server, ce qui a pour conséquence que le serveur abandonne la transaction pour les tables en mémoire. |
|
ASP.NET |
-Utilisez des hachages compatibles FIPS dans les données de télémétrie ASP.Net. -Résout un problème dans lequel « non spécifié » n’est pas une valeur autorisée dans la configuration pour l’attribut « cookieSameSite » des sections authentification par formulaire et configuration de l’état de session. |
|
WPFdeuxième |
-Résout un problème lorsque la vérification orthographique est activée dans les contrôles de zone de texte ou RichTextBox de WPF TextBox ou RichTextBox, les mots tels que « etc. », « par exemple », sont identifiés comme erreurs d’orthographe. -Résout un problème lorsque certaines applications WPF prenant en charge le contrôle qui s’exécutent sur .NET 4,8 pourront occasionnellement rencontrer un blocage avec exceptionSystem. ComponentModel. Win32Exception. -Résout un problème lié à la redisposition de TextBlock (effectue différentes décisions de ligne) lors du rendu et du test de positionnement, etc. Les symptômes incluent du texte manquant et un blocage se bloque lors du traitement de texte par programmation. -Résout un problème lié à l’échec d’un thread de rendu, provoqué par HostVisual déconnexion de sa cible sur le thread incorrect. -Résout un problème de blocage lors du défilement d’un contrôle TreeView dont l’arborescence n’est pas uniforme, en fonction du sens dans lequel les enfants du nœud fourni gouvernent des sous-arbres dont la taille est légèrement différente. -Résout un problème lié à un blocage qui peut se produire lors de la fermeture d’une info-bulle qui est rétablie par le code utilisateur. -Quand un HwndHost quitte l’arborescence d’éléments visuels, une trace de pile est créée. C’est onéreux et généralement inutile. La logique est désormais modifiée pour créer la trace de pile uniquement lorsque la condition d’anomalie se produit. -Traite une fuite de mémoire dans System. Speech. SpeechSynthesizer. -La commande de copie du DataGrid lève une exception si le presse-papiers système est verrouillé par un autre processus. Cela se bloque, car il n’y a généralement pas de code d’application sur la pile pour intercepter l’exception. Dans cette situation, le comportement de TextBox (et d’autres applications comme le bloc-notes, Word, les navigateurs) est d’échouer-rien n’est copié dans le presse-papiers, mais aucune exception ne s’est produit. Une application WPF peut désormais accepter ce comportement en définissant <appSettings> <ajoutez Key = "ShouldThrowOnDataGridCopyOrCutFailure" value = "false"/> </appSettings>dans son fichier app. config. -Résout un problème lors de la création du modèle interne d’un document FixedPage. Le texte s’affichait dans un ordre incorrect dans le cadre des opérations d’édition telles que la sélection et le copier/coller. |
|
WCF3D |
-Lors de l’utilisation d’un nom d’utilisateur Windows UPN dont le format est semblable à username@dns. Domain dans la propriété UserName d’un système NetworkCredential lors de l’utilisation de NetTcpBinding ou NetNamedPipeBinding, WCF fractionneait incorrectement le nom d’utilisateur et le domaine DNS. Cette opération n’est pas valide dans certains scénarios et provoquerait une échec de l’authentification. Ce correctif supprime la modification des informations d’identification lors de l’utilisation d’un nom d’utilisateur UPN. Vous pouvez réactiver la modification en définissant la propriété AppSetting « WCF : enableLegacyUpnUsernameFix » sur true. |
|
Bibliothèques réseau |
-Traite une fuite de mémoire dans HttpListener. |
|
WinForms |
-Résout un problème lié à l’État IsReadOnlyaccessibility DataGridView : le narrateur et un autre outil accessible annoncent l’état de cellule en lecture seule en conséquence. -Résout un problème de régression dans .NET Framework 4,8 lorsque les applications utilisant le type de cellule ComboBox DataGridView et ont opté pour l’accessibilité de niveau 3, peuvent rencontrer des blocages intermittents lors de la modification de la cellule. -Résout un problème dans le code de vérification d’horodatage ClickOnce RFC3161. |
|
Amélioration de l’accessibilité dans WinForms |
Dans cette version, nous ajoutons de nouvelles améliorations en matière d’accessibilité que votre application peut accepter. Par défaut, ces modifications sont désactivées. Les applications qui choisissent d’accéder aux fonctionnalités d’accessibilité introduites dans .net 4,8 et les versions antérieures peuvent ajouter le commutateur de compatibilité suivant au fichier de configuration de l’application : "Switch.UseLegacyAccessibilityFeatures.4=false" Plus précisément, si une application cible .NET 4,8, ajoutez la sectionAppContextSwitchOverrides suivante : <?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> Si une application cible une version antérieure de l’infrastructure et qu’elle est dans les ensembles de fonctionnalités d’accessibilité antérieurs, ajoutez une seule "Switch.UseLegacyAccessibilityFeatures.4=false" basculer vers le AppContextSwitchOverrides zone <?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> Les améliorations apportées à l’accessibilité dans cette version sont les suivantes :
|
1 Common Language Runtime (CLR)deuxième Windows Presentation Foundation (WPF)3D Windows Communication Foundation
Problèmes connus dans cette mise à jour
Les applications WPF (Windows Presentation Framework) qui utilisent deux éléments HostVisual ou plus qui appartiennent à un thread commun, dans lesquels les deux éléments HostVisual sont invités à se déconnecter de leur cible visuelle à peu près en même temps, le courrier échoue avec le message d’erreur suivant :
Type d’exception : System. COMException Message : UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406) CallStack : Frame supérieur est System. Windows. Media. composition. duire + canal. SyncFlush ()
Solutions de contournement
Vous pouvez désactiver le correctif problématique en définissant le commutateur AppContext "Switch. System. Windows. Media. HostVisual. DisconnectsOnWrongThread" sur true, en utilisant l’une des méthodes décrites ici. Ainsi, vous devez supprimer le commutateur après la publication d’un correctif dans une prochaine mise à jour.
Solution de contournement 1
• Ajoutez l’entrée suivante au fichier app. config pour désactiver le correctif problématique dans une application unique.
<runtime> <AppContextSwitchOverrides value="Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/> </runtime>
Notez que si la configuration de votre application comporte déjà une entrée pour <AppContextSwitchOverrides>, vous devez ajouter le nouveau paramètre au sein de cette entrée, en les séparant d’autres commutateurs par un point-virgule :
<AppContextSwitchOverrides value="Switch.SomeOtherSwitch=true; Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/>
Solution de contournement 2
• Appliquez la sous-clé de Registre suivante pour désactiver le correctif problématique pour toutes les applications WPF sur l’ordinateur. AVERTISSEMENT Des problèmes sérieux peuvent se produire si vous modifiez incorrectement le registre à l’aide de l’éditeur du registre ou en utilisant une autre méthode. Ces problèmes peuvent vous obliger à réinstaller le système d’exploitation. Microsoft ne peut pas garantir que ces problèmes peuvent être résolus. Vous modifiez le Registre à vos risques et périls.
Emplacement : HKEY_LOCAL_MACHINE \Software\Microsoft\. NETFramework\AppContext\ Nom : Switch. System. Media. HostVisual. DisconnectsOnWrongThread Type : chaîne Valeur : vrai
Notez que sur les systèmes d’exploitation 64 bits, vous devez également appliquer une sous-clé de Registre portant le même nom, type et valeur à l’emplacement : HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\. NETFramework\AppContext\
Résolution
Nous nous efforçons de résoudre ce problème et fournirons une mise à jour dans la prochaine version.
Informations supplémentaires relatives à cette mise à jour
Les articles suivants contiennent des informations supplémentaires sur cette mise à jour, car elle est associée aux différentes versions de produit.
-
4567327Description de la version d’évaluation de la mise à jour cumulative pour .NET Framework 3,5, 4.7.2 et 4,8 pour windows 10 version 1809 et Windows Server 2019 (KB4567327)
Procédure d'obtention et d'installation de la mise à jour
Installer cette mise à jour
Canal de publication |
Pouvant |
Étape suivante |
Windows Update et Microsoft Update |
Oui |
Pour télécharger et installer cette mise à jour, accédez à paramètres > mettre à jour & sécurité > Windows Update, puis sélectionnez Rechercher les mises à jour. |
Catalogue Microsoft Update |
Oui |
Pour obtenir le package autonome pour cette mise à jour, accédez au site web Catalogue Microsoft Update. |
Windows Server Update Services (WSUS) |
Non |
Vous pouvez importer cette mise à jour manuellement dans WSUS. Pour obtenir des instructions, consultez le catalogue Microsoft Update . |
Informations sur les fichiers
Pour obtenir la liste des fichiers fournis dans cette mise à jour, téléchargez les informations de fichier pour la mise à jour cumulative.
Conditions préalables
Pour appliquer cette mise à jour, .NET Framework 3,5 ou 4,8 doit être installé.
Nécessité de redémarrer
Vous devez redémarrer l’ordinateur après avoir appliqué cette mise à jour si des fichiers concernés sont en cours d’utilisation. Il est recommandé de quitter toutes les applications .NET Framework avant d’appliquer cette mise à jour.
Procédure pour obtenir de l'aide et un support pour cette mise à jour
-
Aide pour l’installation des mises à jour : Windows Update : Forum aux questions
-
Protégez-vous en ligne et à la maison : Support de sécurité Windows
-
Support local selon votre pays : Support international