31 Ιουλίου 2020 - KB4562899 Προεπισκόπηση της αθροιστικής ενημέρωσης για το .NET Framework 3.5 και 4.8 για τα Windows 10 Έκδοση 2004

Ισχύει για
.NET

Σημείωση

  • Ημερομηνία κυκλοφορίας:
    31 Ιουλίου 2020
  • Έκδοση:
    .NET Framework 3.5 και 4.8

Η ενημέρωση της 31ης Ιουλίου 2020 για Windows 10 έκδοση 2004 περιλαμβάνει βελτιώσεις αθροιστικής αξιοπιστίας στο .NET 3.5 και 4.8. Συνιστούμε να εφαρμόσετε αυτήν την ενημέρωση στο πλαίσιο των τακτικών ρουτινών συντήρησης. Πριν να εγκαταστήσετε αυτήν την ενημερωμένη έκδοση, ανατρέξτε στις ενότητες Προϋποθέσεις και Απαιτήσεις επανεκκίνησης .

Βελτιώσεις ποιότητας και αξιοπιστίας

CLR1 - Μια αλλαγή στην .NET Framework 4.8 υπονόμευσε ορισμένα σενάρια EnterpriseServices όπου ένα αντικείμενο διαμερίσματος ενός νήματος μπορεί να αντιμετωπιστεί ως διαμέρισμα πολλαπλών νημάτων και να οδηγήσει σε αποτυχία αποκλεισμού. Αυτή η αλλαγή αναγνωρίζει πλέον σωστά τα αντικείμενα διαμερισμάτων ενός νήματος ως τέτοια και αποφεύγει αυτήν την αποτυχία.
- Επιλύθηκε ένα πρόβλημα σε συγκροτήσεις με δεδομένα προφίλ IBC που προκαλεί τη διακοπή λειτουργίας των διεργασιών εργαζομένων Ngen και την επιστροφή σε πλήρεις εγγενείς εικόνες.
- Αντιμετωπίζει σπάνια σφάλματα που θα μπορούσαν να προκύψουν κατά την παράδοση ματαίωσης νήματος.
SQL - Το SqlBulkCopy.WriteToServer μπορεί να προκαλέσει την αποτυχία συναλλαγών σε πίνακες SQL στη μνήμη. Ο υπολογιστής-πελάτης ενδέχεται να δει μια εξαίρεση με το μήνυμα "Το χρονικό όριο εκτέλεσης έληξε. Το χρονικό όριο που παρήλθε πριν από την ολοκλήρωση της λειτουργίας ή ο διακομιστής δεν αποκρίνεται." Το SqlBulkCopy.WriteToServer έστελνε ένα διακριτικό προσοχής (μήνυμα ακύρωσης) μετά την αποστολή δεδομένων στον SQL Server, με αποτέλεσμα ο διακομιστής να ματαιώσει τη συναλλαγή για πίνακες στη μνήμη.
ASP.NET - Χρησιμοποιήστε κατακερματισμούς συμβατούς με το FIPS στα δεδομένα τηλεμετρίας ASP.Net.
- Επιλύθηκε ένα πρόβλημα όπου το "Απροσδιόριστο" δεν ήταν επιτρεπόμενη τιμή στη ρύθμιση παραμέτρων για το χαρακτηριστικό 'cookieSameSite' των ενοτήτων ρύθμισης παραμέτρων ελέγχου ταυτότητας φορμών και κατάστασης περιόδου λειτουργίας.
WPF2 - Επιλύθηκε ένα πρόβλημα όταν είναι ενεργοποιημένος ο ορθογραφικός έλεγχος στο WPF TextBox ή στο RichTextBox, λέξεις όπως "etc.", "e.g." αναγνωρίζονται εσφαλμένα ως ορθογραφικά λάθη.
- Επιλύθηκε ένα πρόβλημα όταν ορισμένες εφαρμογές WPF Per-Monitor Aware που εκτελούνται σε .NET 4.8 ενδέχεται να αντιμετωπίσουν περιστασιακά ένα σφάλμα με exceptionSystem.ComponentModel.Win32Exception.
- Επιλύθηκε ένα πρόβλημα όπου το TextBlock αναπροσαρμόζει τις ροές (λαμβάνει διαφορετικές αποφάσεις αλλαγής γραμμής) κατά τη διάρκεια της απόδοσης και της δοκιμής επιτυχίας, έναντι της μέτρησης. Τα συμπτώματα περιλαμβάνουν κείμενο που λείπει και σφάλματα FailFast κατά την επεξεργασία κειμένου μέσω προγραμματισμού.
- Επιλύθηκε ένα πρόβλημα με μια αποτυχία νήματος απόδοσης που προκαλείται από την αποσύνδεση του προορισμού του HostVisual σε λάθος νήμα.
- Επιλύει ένα πρόβλημα με μια παύση απόκρισης κατά την κύλιση ενός TreeView του οποίου το δέντρο δεν είναι ομοιόμορφο, με την έννοια ότι τα παιδιά ενός δεδομένου κόμβου κυβερνούν υποδέντρα των οποίων τα μεγέθη είναι αρκετά διαφορετικά.
- Επιλύει ένα πρόβλημα με ένα σφάλμα που μπορεί να παρουσιαστεί κατά το κλείσιμο μιας συμβουλής εργαλείου που κλείνει ξανά με κωδικό χρήστη.
- Όταν ένα HwndHost αφήνει το οπτικό δέντρο, δημιουργείται ένα ίχνος στοίβας. Αυτό είναι ακριβό και συνήθως περιττό. Η λογική έχει πλέον αλλάξει ώστε να δημιουργείται η ανίχνευση στοίβας μόνο όταν παρουσιάζεται η ανώμαλη συνθήκη.
- Αντιμετωπίζει μια διαρροή μνήμης στο System.Speech.SpeechSynthesizer.
- Η εντολή Αντιγραφή του DataGrid δημιουργεί μια εξαίρεση εάν το πρόχειρο του συστήματος είναι κλειδωμένο από άλλη διαδικασία. Αυτό παρουσιάζει σφάλμα, καθώς συνήθως δεν υπάρχει κωδικός εφαρμογής στη στοίβα για να εντοπιστεί η εξαίρεση. Η συμπεριφορά του TextBox (και άλλων εφαρμογών όπως το Σημειωματάριο, το Word, τα προγράμματα περιήγησης) σε αυτήν την κατάσταση είναι να αποτύχει σιωπηλά - τίποτα δεν αντιγράφεται στο πρόχειρο, αλλά καμία εξαίρεση. Μια εφαρμογή WPF μπορεί πλέον να επιλέξει αυτήν τη συμπεριφορά ορίζοντας την <προσθήκη του appSettings<>key="ShouldThrowOnDataGridCopyOrCutFailure" value="false"/></appSettings>στο αρχείο app.config.
- Επιλύθηκε ένα πρόβλημα στην κατασκευή του εσωτερικού μοντέλου για ένα έγγραφο FixedPage. Κάποιο κείμενο εμφανιζόταν με λάθος σειρά για τις λειτουργίες επεξεργασίας, όπως για παράδειγμα για τις λειτουργίες επιλογής και αντιγραφής/επικόλλησης.
WCF3 - Όταν χρησιμοποιείτε ένα όνομα χρήστη UPN Windows με μορφή παρόμοια με username@dns.domain την ιδιότητα ονόματος χρήστη ενός NetworkCredential κατά τη χρήση NetTcpBinding ή NetNamedPipeBinding, το WCF διαχώριζε εσφαλμένα το όνομα χρήστη και το dns.domain τοποθετώντας τα στις ιδιότητες UserName και Domain. Αυτό δεν είναι έγκυρο σε ορισμένα σενάρια και θα έχει ως αποτέλεσμα την αποτυχία ελέγχου ταυτότητας. Αυτή η επιδιόρθωση καταργεί την τροποποίηση διαπιστευτηρίων κατά τη χρήση ενός ονόματος χρήστη UPN. Η τροποποίηση μπορεί να ενεργοποιηθεί εκ νέου ορίζοντας το AppSetting "wcf:enableLegacyUpnUsernameFix" σε true.
Net Libraries - Αντιμετωπίζει διαρροή μνήμης στο HttpListener.
Φόρμες Winforms - Επιλύει ένα πρόβλημα με την κατάσταση προσβασιμότητας DataGridView, IsReadOnly: Ο Αφηγητής και άλλα προσβάσιμα εργαλεία ανακοινώνουν ανάλογα την κατάσταση του κελιού μόνο για ανάγνωση.
- Επιλύθηκε μια παλινδρόμηση στο .NET Framework 4.8, όταν εφαρμογές που χρησιμοποιούν τον τύπο κελιού DataGridView ComboBox και έχουν επιλέξει την προσβασιμότητα επιπέδου 3, ενδέχεται να αντιμετωπίσουν περιστασιακά σφάλματα κατά την επεξεργασία του κελιού.
- Επιλύθηκε ένα πρόβλημα στο ClickOnce RFC3161 στον κωδικό επαλήθευσης χρονικής σήμανσης.
Βελτιώσεις προσβασιμότητας στο Winforms Σε αυτήν την έκδοση, προσθέτουμε νέες βελτιώσεις προσβασιμότητας στις οποίες μπορεί να συμμετέχει η εφαρμογή σας. Από προεπιλογή, αυτές οι αλλαγές είναι απενεργοποιημένες. Οι εφαρμογές που επιλέγουν δυνατότητες προσβασιμότητας που παρουσιάστηκαν στο .NET 4.8 και παλαιότερες εκδόσεις, μπορούν να προσθέσουν τον ακόλουθο διακόπτη συμβατότητας στο αρχείο ρύθμισης παραμέτρων της εφαρμογής:
"Switch.UseLegacyAccessibilityFeatures.4=false"
Συγκεκριμένα, εάν μια εφαρμογή στοχεύει .NET 4.8, προσθέστε την ακόλουθη ενότητα AppContextSwitchOverrides:
<?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>
Εάν μια εφαρμογή στοχεύει σε μια παλαιότερη έκδοση του πλαισίου και συμμετέχει στα σύνολα δυνατοτήτων προσβασιμότητας που κυκλοφόρησαν προηγουμένως, προσθέστε έναν μεμονωμένο "Switch.UseLegacyAccessibilityFeatures.4=false" διακόπτη στην υπάρχουσα AppContextSwitchOverrides ενότητα:
<?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 που περιλαμβάνονται σε αυτήν την έκδοση είναι οι εξής:- Επιλύει ένα πρόβλημα με την ανακοίνωση στοιχείων ελέγχου και κατηγοριών PropertyGrid σε κατάσταση ανάπτυξης/σύμπτυξης από προγράμματα ανάγνωσης οθόνης.
- Ενημερώθηκαν τα προσβάσιμα μοτίβα του ελέγχου Property Grid και των εσωτερικών στοιχείων του.
- Ενημερώθηκαν τα προσβάσιμα ονόματα των εσωτερικών στοιχείων του στοιχείου ελέγχου πλέγματος ιδιοτήτων, ώστε να τα ανακοινώνουν σωστά από το πρόγραμμα ανάγνωσης οθόνης.
- Αντιμετωπίζει προσβάσιμες ιδιότητες ορθογωνίου οριοθέτησης για τα στοιχεία ελέγχου PropertyGridView
- Επιτρέπει στα προγράμματα ανάγνωσης οθόνης να εκφωνούν σωστά την κατάσταση ανάπτυξης/σύμπτυξης του κελιού DataGridView ComboBox.

         1 Common Language Runtime (CLR)
2 Υποδομή παρουσίασης των Windows (WPF)
3 Υποδομή επικοινωνιών των Windows

Γνωστά προβλήματα σε αυτήν την ενημέρωση

Οι εφαρμογές Windows Presentation Framework (WPF) που χρησιμοποιούν δύο ή περισσότερα στοιχεία HostVisual που ανήκουν σε ένα κοινό νήμα, όπου και τα δύο στοιχεία HostVisual καλούνται να αποσυνδεθούν από τον οπτικό προορισμό τους περίπου ταυτόχρονα, η αλληλογραφία αποτυγχάνει με το ακόλουθο σφάλμα:

Τύπος εξαίρεσης: System.COMException
Μήνυμα: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406)
Στοίβα κλήσης: το επάνω πλαίσιο είναι System.Windows.Media.Composition.DUCE+Channel.SyncFlush()

Λύσεις

Μπορείτε να απενεργοποιήσετε την προβληματική επιδιόρθωση ορίζοντας τον διακόπτη AppContext "Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread" σε true, χρησιμοποιώντας μία από τις μεθόδους που περιγράφονται εδώ.  Αυτό εκθέτει την εφαρμογή σας στο αρχικό σφάλμα, επομένως θα πρέπει να καταργήσετε τον διακόπτη όταν δημοσιευτεί μια επιδιόρθωση μέσω μιας επερχόμενης ενημέρωσης.

Λύση 1

• Προσθέστε την ακόλουθη καταχώρηση στο αρχείο app.config για να απενεργοποιήσετε την προβληματική επιδιόρθωση σε μία μόνο εφαρμογή.

        <runtime>
     <AppContextSwitchOverrides τιμή="Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread=true"/>
</runtime>

Λάβετε υπόψη ότι εάν η ρύθμιση παραμέτρων της εφαρμογής σας έχει ήδη μια καταχώρηση για <AppContextSwitchOverrides>, πρέπει να προσθέσετε τη νέα ρύθμιση σε αυτήν την καταχώρηση, διαχωρισμένη από άλλους διακόπτες με ελληνικό ερωτηματικό:

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

Λύση 2

• Εφαρμόστε το ακόλουθο δευτερεύον κλειδί μητρώου για να απενεργοποιήσετε την προβληματική επιδιόρθωση για όλες τις εφαρμογές WPF στον υπολογιστή.
 Προειδοποίηση
Εάν τροποποιήσετε εσφαλμένα το μητρώο χρησιμοποιώντας τον Επεξεργαστή Μητρώου ή κάποια άλλη μέθοδο, ενδέχεται να προκύψουν σοβαρά προβλήματα. Αυτά τα προβλήματα ενδέχεται να απαιτήσουν την επανεγκατάσταση του λειτουργικού συστήματος. Η Microsoft δεν μπορεί να εγγυηθεί ότι αυτά τα προβλήματα μπορούν να επιλυθούν. Τροποποιήστε το μητρώο με δική σας ευθύνη.

Τοποθεσία: HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework\AppContext\
Όνομα: Switch.System.Media.HostVisual.DisconnectsOnWrongThread
Τύπος: String
Τιμή: true

Λάβετε υπόψη ότι για λειτουργικά συστήματα 64 bit, πρέπει επίσης να εφαρμόσετε ένα δευτερεύον κλειδί μητρώου με το ίδιο όνομα, τύπο και τιμή στην τοποθεσία: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\.NETFramework\AppContext\

Επίλυση

Εργαζόμαστε για την εξεύρεση μιας λύσης και θα παράσχουμε μια ενημέρωση σε μια προσεχή έκδοση.
 

Πώς μπορείτε να αποκτήσετε και να εγκαταστήσετε την ενημέρωση

Εγκατάσταση αυτής της ενημέρωσης

Κανάλι κυκλοφορίας Διατίθεται Επόμενο βήμα
Windows Update και Microsoft Update Ναι Για να κατεβάσετε και να εγκαταστήσετε αυτήν την ενημέρωση, μεταβείτε στην περιοχή Ενημέρωση ρυθμίσεων>& ΑσφάλειαWindows Update και, στη συνέχεια, επιλέξτε Έλεγχος> για ενημερώσεις.
Κατάλογος του Microsoft Update Ναι Για να λάβετε το μεμονωμένο πακέτο για αυτήν την ενημέρωση, μεταβείτε στην τοποθεσία web Κατάλογος του Microsoft Update.
Υπηρεσίες Windows Server Update Services (WSUS) Όχι Μπορείτε να εισαγάγετε αυτήν την ενημέρωση στο WSUS με μη αυτόματο τρόπο. Ανατρέξτε στον Κατάλογο του Microsoft Update για οδηγίες.

Πληροφορίες αρχείων

Για μια λίστα με τα αρχεία που παρέχονται σε αυτήν την ενημέρωση, πραγματοποιήστε λήψη των πληροφοριών αρχείων για τη συγκεντρωτική ενημέρωση.

Προαπαιτούμενα

Για να εφαρμόσετε αυτήν την ενημέρωση, πρέπει να έχετε εγκαταστήσει .NET Framework 3.5 ή 4.8.

Απαίτηση επανεκκίνησης

Πρέπει να επανεκκινήσετε τον υπολογιστή μετά την εφαρμογή αυτής της ενημέρωσης, εάν χρησιμοποιούνται αρχεία που επηρεάζονται. Συνιστούμε να κλείσετε όλες τις εφαρμογές που βασίζονται στο .NET Framework, προτού εφαρμόσετε αυτήν την ενημερωμένη έκδοση.

Πώς μπορείτε να λάβετε βοήθεια και υποστήριξη για αυτήν την ενημερωμένη έκδοση