21. Juli 2020–KB4562900 Kumulatives Update Preview für .NET Framework 3.5 und 4.8 für Windows 10 Version 1903 und Windows Server 1903 RTM und Windows 10, Version 1909 und Windows Server, Version 1909

Gilt für
.NET

Hinweis

  • Veröffentlichungsdatum:
    21. Juli 2020
  • Version:
    .NET Framework 3.5 und 4.8

Das Update vom 21. Juli 2020 für Windows 10 Version 1903 und Windows Server 1903 RTM und Windows 10, Version 1909 und Windows Server, Version 1909, enthält Verbesserungen der kumulativen Zuverlässigkeit in .NET 3.5 und 4.8. Wir empfehlen, dass Sie dieses Update im Rahmen Ihrer regulären Wartungsroutinen anwenden. Lesen Sie vor der Installation dieses Updates die Abschnitte Voraussetzungen und Neustartanforderung.

Verbesserungen der Qualität und Zuverlässigkeit

CLR1 – Eine Änderung in .NET Framework 4.8 hat bestimmte EnterpriseServices-Szenarien zurückgestellt, in denen ein Singlethread-Apartmentobjekt als Multithread-Apartment behandelt werden kann und zu einem Blockierungsfehler führen kann. Diese Änderung identifiziert jetzt Singlethread-Apartmentobjekte ordnungsgemäß als solche und vermeidet diesen Fehler.
– Behebt ein Problem in Assemblys mit IBC-Profildaten, das dazu führt, dass Ngen-Workerprozesse abstürzen und auf vollständige native Images zurückfallen.
– Behebt seltene Abstürze, die während der Threadabbruchübermittlung auftreten können.
SQL – SqlBulkCopy.WriteToServer kann dazu führen, dass Transaktionen in SQL-Tabellen im Arbeitsspeicher fehlschlagen. Dem Client wird möglicherweise eine Ausnahme mit der Meldung "Ausführungstimeout abgelaufen. Der Timeoutzeitraum, der vor Abschluss des Vorgangs verstrichen ist, oder der Server reagiert nicht." SqlBulkCopy.WriteToServer hat nach dem Senden von Daten an Sql Server ein Attention-Token (Abbruchnachricht) gesendet, wodurch der Server die Transaktion für In-Memory-Tabellen abbricht.
ASP.NET – Verwenden Sie FIPS-kompatible Hashes in ASP.Net Telemetriedaten.
– Behebt ein Problem, bei dem "Unspecified" in der Konfiguration für das Attribut "cookieSameSite" der Konfigurationsabschnitte für die Formularauthentifizierung und sitzungszustandskonfiguration nicht zulässig war.
WPF2 – Behebt ein Problem, wenn die Rechtschreibprüfung in WPF TextBox oder RichTextBox aktiviert ist, Wörter wie "etc.", "z. B. werden falsch als Rechtschreibfehler identifiziert.
– Behebt ein Problem, bei dem einige Per-Monitor WPF-Anwendungen, die unter .NET 4.8 ausgeführt werden, gelegentlich einen Absturz mit ausnahmeSystem.ComponentModel.Win32Exception feststellen können.
– Behebt ein Problem, bei dem TextBlock während des Renderns und Treffertests im Vergleich zum Measure umläuft (unterschiedliche Entscheidungen zum Zeilenumbruch trifft). Zu den Symptomen gehören fehlender Text und FailFast-Abstürze während der programmgesteuerten Textverarbeitung.
– Behebt ein Problem mit einem Renderthreadfehler, der dadurch verursacht wird, dass HostVisual das Ziel im falschen Thread trennt.
– Behebt ein Problem, bei dem beim Scrollen einer TreeView,deren Struktur nicht einheitlich ist, in dem Sinne, dass die untergeordneten Elemente eines bestimmten Knotens Unterstrukturen steuern, deren Größe sich erheblich unterscheidet.
– Behebt ein Problem mit einem Absturz, das auftreten kann, wenn eine QuickInfo geschlossen wird, die erneut durch Benutzercode geschlossen wird.
– Wenn ein HwndHost die visuelle Struktur verlässt, wird eine Stapelüberwachung erstellt. Dies ist teuer und in der Regel unnötig. Die Logik wird jetzt geändert, um die Stapelüberwachung nur dann zu erstellen, wenn die anomale Bedingung auftritt.
– Behebt einen Speicherverlust in System.Speech.SpeechSynthesizer.
– Der Copy-Befehl von DataGrid löst eine Ausnahme aus, wenn die System-Zwischenablage durch einen anderen Prozess gesperrt ist. Dies stürzt ab, da in der Regel kein App-Code auf dem Stapel vorhanden ist, um die Ausnahme abzufangen. Das Verhalten von TextBox (und anderen Apps wie Editor, Word, Browsern) in dieser Situation besteht darin, im Hintergrund fehlzuschlagen – es wird nichts in die Zwischenablage kopiert, aber keine Ausnahme. Eine WPF-App kann dieses Verhalten jetzt aktivieren, indem sie appSettings add key="ShouldThrowOnDataGridCopyOrCutFailure" value="false"/<>appSettings>in der app.config-Datei festlegen<.><
– Behebt ein Problem beim Erstellen des internen Modells für ein FixedPage-Dokument. Text wurde für Bearbeitungsvorgänge wie Auswahl und Kopieren/Einfügen in der falschen Reihenfolge angezeigt.
WCF3 – Bei Verwendung eines UPN-Windows-Benutzernamens mit dem Format, das in der username-Eigenschaft eines NetworkCredential-Objekts bei Verwendung von NetTcpBinding oder NetNamedPipeBinding ähnelt username@dns.domain , würde WCF den Benutzernamen und dns.domain fälschlicherweise in die Eigenschaften UserName und Domain aufteilen. Dies ist in einigen Szenarien ungültig und würde dazu führen, dass die Authentifizierung fehlschlägt. Dieser Fix entfernt die Änderung der Anmeldeinformationen bei Verwendung eines UPN-Benutzernamens. Die Änderung kann erneut aktiviert werden, indem AppSetting "wcf:enableLegacyUpnUsernameFix" auf true festgelegt wird.
Net Libraries – Behebt einen Speicherverlust in HttpListener.
WinForms – Behebt ein Problem mit dem DataGridView IsReadOnlyZugriffsstatus: Die Sprachausgabe und ein anderes barrierefreies Tool kündigt eine schreibgeschützte Zelle status entsprechend an.
– Behebt eine Regression in .NET Framework 4.8, wenn Bei Anwendungen, die den DataGridView ComboBox-Zelltyp verwenden und sich für die Barrierefreiheit der Ebene 3 entschieden haben, beim Bearbeiten der Zelle zeitweilige Abstürze auftreten können.
– Behebt ein Problem in ClickOnce RFC3161 Zeitstempelüberprüfungscode.
Verbesserungen der Winforms-Barrierefreiheit In dieser Version fügen wir neue Barrierefreiheitsverbesserungen hinzu, die Ihre Anwendung aktivieren kann. Standardmäßig sind diese Änderungen deaktiviert. Anwendungen, die sich für die in .NET 4.8 und früheren Versionen eingeführten Barrierefreiheitsfeatures entscheiden , können der Konfigurationsdatei der Anwendung den folgenden Kompatibilitätsschalter hinzufügen:
"Switch.UseLegacyAccessibilityFeatures.4=false"
Wenn eine Anwendung auf .NET 4.8 ausgerichtet ist, fügen Sie den folgenden Abschnitt AppContextSwitchOverrides hinzu:
<?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>
Wenn eine Anwendung auf eine frühere Version des Frameworks abzielt und sich für die zuvor veröffentlichten Sätze von Barrierefreiheitsfeatures entscheidet, fügen Sie dem vorhandenen AppContextSwitchOverrides Abschnitt einen einzelnen "Switch.UseLegacyAccessibilityFeatures.4=false" Switch hinzu:
<?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>
Winforms-Barrierefreiheitsverbesserungen, die in diesem Release enthalten sind: - Behebt ein Problem mit der Ankündigung des erweiterten/reduzierten Status von PropertyGrid-Steuerelementelementen und Kategorien durch Bildschirmsprachausgaben.
– Die verfügbaren Muster des Eigenschaftenraster-Steuerelements und seiner inneren Elemente wurden aktualisiert.
– Die barrierefreien Namen der inneren Elemente des Eigenschaftenraster-Steuerelements wurden aktualisiert, um diese ordnungsgemäß von der Sprachausgabe ankündigen zu können.
– Adressiert die Eigenschaften des umgebenden Rechtecks, auf die zugegriffen werden kann, für die PropertyGridView-Steuerelemente
– Ermöglicht es Sprachausgaben, den erweiterten/reduzierten Zustand der DataGridView ComboBox-Zelle ordnungsgemäß anzukündigen.

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

Bekannte Probleme bei diesem Update

WPF-Anwendungen (Windows Presentation Framework), die zwei oder mehr HostVisual-Elemente verwenden, die zu einem gemeinsamen Thread gehören, wobei beide HostVisual-Elemente aufgefordert werden, die Verbindung mit ihrem visuellen Ziel ungefähr gleichzeitig zu trennen, schlägt E-Mail mit dem folgenden Fehler fehl:

Ausnahmetyp: System.COMException
Meldung: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406)
Aufrufliste: Oberster Frame ist System.Windows.Media.Composition.DUCE+Channel.SyncFlush()

Problemumgehungen

Sie können die Problembehebung deaktivieren, indem Sie den AppContext-Schalter "Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread" auf true festlegen, indem Sie eine der hier beschriebenen Methoden verwenden.  Dadurch wird Ihre App für den ursprünglichen Fehler verfügbar gemacht. Daher sollten Sie den Switch entfernen, sobald eine Korrektur durch ein bevorstehendes Update veröffentlicht wurde.

Problemumgehung 1

• Fügen Sie den folgenden Eintrag zur app.config-Datei hinzu, um die problembehebung in einer einzelnen Anwendung zu deaktivieren.

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

Wenn Ihre Anwendungskonfiguration bereits über einen Eintrag für <AppContextSwitchOverrides verfügt>, müssen Sie die neue Einstellung innerhalb dieses Eintrags hinzufügen, getrennt von anderen Schaltern durch ein Semikolon:

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

Problemumgehung 2

• Wenden Sie den folgenden Registrierungsunterschlüssel an, um die Problembehebung für alle WPF-Anwendungen auf dem Computer zu deaktivieren.
 Warnung
Durch die unsachgemäße Änderung der Registrierung mit dem Registrierungs-Editor oder einer anderen Methode können schwerwiegende Probleme verursacht werden. Diese Probleme machen möglicherweise eine Neuinstallation des Betriebssystems erforderlich. Microsoft kann nicht garantieren, dass diese Probleme gelöst werden können. Das Ändern der Registrierung erfolgt auf eigenes Risiko.

Standort: HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework\AppContext\
Name: Switch.System.Media.HostVisual.DisconnectsOnWrongThread
Typ: Zeichenfolge
Wert: true

Beachten Sie, dass Sie unter 64-Bit-Betriebssystemen auch einen Registrierungsunterschlüssel mit demselben Namen, Typ und Wert am Speicherort anwenden müssen: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\.NETFramework\AppContext\

Lösung

Wir arbeiten an einer Lösung und werden in einer kommenden Version ein Update bereitstellen.
 

Bezug und Installation des Updates

Dieses Update installieren

Veröffentlichungskanal Verfügbar Nächster Schritt
Windows Update und Microsoft Update Ja Um dieses Update herunterzuladen und zu installieren, wechseln Sie zu Einstellungen>Update & Sicherheit>Windows Update, und wählen Sie dann Nach Updates suchen aus.
Microsoft Update-Katalog Ja Das eigenständige Paket für dieses Update finden Sie auf der Microsoft Update-Katalog-Website.
Windows Server Update Services (WSUS) Nein Sie können dieses Update manuell in WSUS importieren. Anweisungen finden Sie im Microsoft Update-Katalog .

Dateiinformationen

Eine Liste der Dateien, die in diesem Update bereitgestellt werden, finden Sie im Dokument mit Dateiinformationen für das kumulative Update.

Voraussetzungen

Um dieses Update anwenden zu können, muss .NET Framework 3.5 oder 4.8 installiert sein.

Neustartanforderung

Starten Sie den Computer nach der Installation dieses Updates neu, wenn betroffene Dateien verwendet werden. Es wird empfohlen, alle .NET Framework-basierten Anwendungen zu beenden, bevor Sie dieses Update installieren.

Hilfe und Support zu diesem Update