2020 m. liepos 31 d. – KB4562899 „.NET Framework“ 3.5 ir 4.8 versijų kaupiamojo naujinimo, skirto „Windows 10“ 2004 versijai, peržiūros versija

Taikoma
.NET

Pastaba

  • Leidimo data:
    2020 m. liepos 31 d.
  • Versija:
    ".NET Framework" 3.5 ir 4.8

2020 m. liepos 31 d. naujinimas, skirtas "Windows 10" 2004 versijai, apima .NET 3.5 ir 4.8 kaupiamuosius patikimumo patobulinimus. Rekomenduojame taikyti šį naujinimą kaip dalį savo reguliarios priežiūros rutinos. Prieš diegdami šį naujinimą, žr. skyrius Būtinosios sąlygos ir Paleidimo iš naujo reikalavimai .

Kokybės ir patikimumo patobulinimai

CLR1 - .NET Framework 4.8 pakeitimas regresavo tam tikrus EnterpriseServices scenarijus, kai vienos gijos buto objektas gali būti traktuojamas kaip kelių gijų butas ir sukelti blokavimo gedimą. Šis pakeitimas dabar teisingai identifikuoja vieno siūlo buto objektus kaip tokius ir išvengia šio gedimo.
- Išsprendžia problemą rinkiniuose su IBC profilio duomenimis, dėl kurios Ngen darbo procesai sugenda ir grįžta prie pilnų vietinių vaizdų.
- Išsprendžia retus gedimus, kurie gali įvykti gijos nutraukimo metu.
SQL - SqlBulkCopy.WriteToServer gali sukelti operacijų į atminties SQL lenteles gedimą. Klientas gali matyti išimtį su pranešimu "Baigėsi vykdymo skirtasis laikas. Skirtasis laikas praėjo iki operacijos pabaigos arba serveris neatsako." "SqlBulkCopy.WriteToServer" išsiuntė dėmesio atpažinimo ženklą (atšaukimo pranešimą) išsiuntus duomenis į "Sql Server", todėl serveris nutraukė atmintyje esančių lentelių operaciją.
ASP.NET - Naudokite FIPS suderinamas maišas ASP.Net telemetrijos duomenis.
- Išsprendžia problemą, kai "Nenurodyta" nebuvo leidžiama reikšmė formų autentifikavimo ir sesijos būsenos konfigūravimo skyrių atributo "cookieSameSite" konfigūracijoje.
WPF2 - Išsprendžia problemą, kai rašybos tikrinimas įjungtas WPF TextBox arba RichTextBox, žodžiai kaip "etc.", "pvz." neteisingai identifikuojami kaip rašybos klaidos.
- Išsprendžia problemą, kai kai kurios Per-Monitor Aware WPF programos, veikiančios .NET 4.8, retkarčiais gali susidurti su gedimu dėl išimtiesSystem.ComponentModel.Win32Exception.
- Išsprendžia problemą, kai "TextBlock" perpildo (priima skirtingus sprendimus dėl eilučių lūžio) atvaizdavimo ir atitikties testo metu, palyginti su matavimo metu. Šie simptomai apima trūkstamą tekstą ir "FailFast" gedimus programuojamo teksto apdorojimo metu.
- Išsprendžia problemą dėl atvaizdavimo gijos gedimo, kurį sukelia HostVisual atjungti savo paskirties vietą neteisingoje gijoje.
- Išsprendžia problemą dėl pakibimo slenkant TreeView, kurio medis yra nevienodas, ta prasme, kad tam tikro mazgo vaikai valdo pomedžius, kurių dydžiai yra gana skirtingi.
- Išsprendžia problemą dėl gedimo, kuris gali įvykti uždarant patarimą, kuris vėl uždaromas naudojant vartotojo kodą.
- Kai HwndHost palieka vizualinį medį, sukuriamas rietuvės pėdsakas. Tai brangu ir dažniausiai nereikalinga. Dabar logika pakeista ir rietuvės sekimas kuriamas tik tada, kai įvyksta neįprasta sąlyga.
- Išsprendžia "System.Speech.SpeechSynthesizer" atminties nutekėjimo problemą.
- DataGrid komanda Kopijuoti meta išimtį, jei sistemos mainų sritį užrakina kitas procesas. Tai sugenda, nes paprastai ant rietuvės nėra programos kodo, kad būtų galima sugauti išimtį. "TextBox" (ir kitų programų, tokių kaip "Notepad", "Word", naršyklės) elgesys šioje situacijoje yra tylus - niekas nėra nukopijuotas į mainų sritį, bet ne išimtis. WPF programa dabar gali pasirinkti šį veikimą savo app.config faile nustatydama <appSettings><add key="ShouldThrowOnDataGridCopyOrCutFailure" value="false"/></appSettings>.
- Išsprendžia problemą, susijusią su FixedPage dokumento vidinio modelio kūrimu. Dalis teksto buvo rodoma neteisinga tvarka redagavimo operacijoms, pvz., pasirinkimui ir kopijavimui / įklijavimui.
WCF3 - Naudojant UPN "Windows" vartotojo vardą, kurio formatas panašus į username@dns.domain "NetworkCredential" vartotojo vardo ypatybę, naudojant "NetTcpBinding" arba "NetNamedPipeBinding", WCF neteisingai padalindavo vartotojo vardą ir dns.domain, įdėdamas juos į "UserName" ir "Domain" ypatybes. Kai kuriais atvejais tai neleistina, todėl autentifikuoti nepavyks. Ši pataisa pašalina kredencialų modifikavimą naudojant UPN vartotojo vardą. Modifikaciją galima įjungti iš naujo nustačius AppSetting "wcf:enableLegacyUpnUsernameFix" reikšmę TRUE.
Tinklo bibliotekos - Išsprendžia atminties nutekėjimą HttpListener.
"Winforms" - Išsprendžia problemą dėl "DataGridView IsReadOnlyaccessibility" būsenos: Diktorius ir kitas neįgaliesiems pritaikytas įrankis atitinkamai praneša tik skaitomo langelio būseną.
- Išsprendžia regresiją .NET Framework 4.8, kai programos, naudojančios DataGridView ComboBox langelio tipą ir pasirinkusios 3 lygio pritaikymą neįgaliesiems, gali patirti pasikartojančius gedimus redaguojant langelį.
- Išsprendžia problemą dėl "ClickOnce" RFC3161 laiko žymos patvirtinimo kodo.
"Winforms" pritaikymo neįgaliesiems patobulinimai Šiame leidime įtraukiame naujų pritaikymo neįgaliesiems patobulinimų, kuriuos jūsų programa gali pasirinkti. Pagal numatytuosius nustatymus šie pakeitimai yra išjungti. Programos, sutinkančios naudoti pritaikymo neįgaliesiems funkcijas , įdiegtas .NET 4.8 ir ankstesnėse versijose, gali įtraukti šį suderinamumo jungiklį į programos konfigūracijos failą:
"Switch.UseLegacyAccessibilityFeatures.4=false"
Ypač, jei programa skirta .NET 4.8, įtraukite šią AppContextSwitchOverride skiltį:
<?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>
Jei programa taikoma senesnei sistemos versijai ir pasirenka ankstesnio leidimo pritaikymo neįgaliesiems funkcijų rinkinius, įtraukite vieną "Switch.UseLegacyAccessibilityFeatures.4=false" jungiklį į esamą AppContextSwitchOverrides skyrių:
<?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>
Į šį leidimą įtraukti "WinForms" pritaikymo neįgaliesiems patobulinimai: Išsprendžia problemą dėl ekrano skaitytuvų pranešimo PropertyGrid valdiklio elementų ir kategorijų išplėtimo / sutraukimo būsenos.
- Atnaujinti pasiekiami ypatybių tinklelio valdiklio ir jo vidinių elementų modeliai.
- Atnaujinti pasiekiami ypatybių tinklelio valdiklio vidinių elementų pavadinimai, kad juos teisingai praneštų ekrano skaitytuvas.
- Adresai riboja stačiakampį pasiekiamos ypatybės PropertyGridView valdikliams
- Leidžia ekrano skaitytuvams teisingai pranešti DataGridView ComboBox langelio išplėtimo / sutraukimo būseną.

         1 Bendroji kalbos vykdyklė (CLR)
2 "Windows" grafikos pateikimo platforma (WPF)
3 "Windows" ryšių fondas

Žinomos problemos šiame naujinime

"Windows Presentation Framework" (WPF) programos, naudojančios du ar daugiau "HostVisual" elementų, priklausančių bendrai gijai, kai abiejų "HostVisual" elementų prašoma atsijungti nuo vaizdinės paskirties vietos maždaug tuo pačiu metu, paštas nepavyksta su šia klaida:

Išimties tipas: System.COMException
Pranešimas: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406)
Callstack: viršutinis kadras yra System.Windows.Media.Composition.DUCE+Channel.SyncFlush()

Sprendimai

Probleminį sprendimą galite išjungti nustatydami "AppContext" jungiklį "Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread" kaip teisingą ir naudodami vieną iš čia aprašytų metodų.  Tai atskleidžia pradinę jūsų programos klaidą, todėl turėtumėte pašalinti jungiklį, kai pataisa bus publikuota būsimame naujinime.

1 sprendimas

• Įtraukite šį įrašą į app.config failą, kad išjungtumėte probleminį pataisymą vienoje programoje.

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

Atkreipkite dėmesį, kad jei jūsų programos konfigūracija jau turi AppContextSwitchOverride įrašą<>, tame įraše turite įtraukti naują parametrą, atskirtą nuo kitų jungiklių kabliataškiu:

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

2 sprendimo būdas

• Taikykite šį registro dalinį raktą, kad išjungtumėte probleminį pataisymą visoms WPF programoms įrenginyje.
 Įspėjimas
Gali kilti rimtų problemų, jei netinkamai pakeisite registrą naudodami registro rengyklę arba kitą būdą. Dėl šių problemų gali reikėti iš naujo įdiegti operacinę sistemą. "„Microsoft“" negali garantuoti, kad galima išspręsti šias problemas. Keiskite registrą savo rizika.

Vieta: HKEY_LOCAL_MACHINE\Software\„Microsoft“\.NETFramework\AppContext\
Pavadinimas: Switch.System.Media.HostVisual.DisconnectsOnWrongThread
Tipas: eilutė
Reikšmė: teisinga

Atkreipkite dėmesį, kad 64 bitų operacinėse sistemose taip pat reikia taikyti dalinį registro raktą tuo pačiu pavadinimu, tipu ir reikšme: HKEY_LOCAL_MACHINE\Software\Wow6432Node\„Microsoft“\.NETFramework\AppContext\

Sprendimas

Ieškome sprendimo ir pateiksime naujinimą būsimame leidime.
 

Kaip gauti ir įdiegti naujinimą

Diegti šį naujinimą

Išleidimo kanalas Pasiekiamas Kitas veiksmas
„Windows Update“ ir „„Microsoft“ Update“ Taip Norėdami atsisiųsti ir įdiegti šį naujinimą, eikite į Parametrų>naujinimas & sauga„Windows Update“ tada pasirinkite Tikrinti>, ar yra naujinimų.
„„Microsoft“ Update“ katalogas Taip Norėdami gauti atskirą šio naujinimo paketą, eikite į „„Microsoft“ Update“ katalogo svetainę.
„Windows Server Update Services“ (WSUS) Ne Galite importuoti šį naujinimą į WSUS rankiniu būdu. Instrukcijas žr. „„Microsoft“ Update“ katalogas.

Failo informacija

Norėdami gauti į šį naujinimą įtrauktų failų sąrašą, atsisiųskite kaupiamojo naujinimo failo informaciją.

Būtinosios sąlygos

Jei norite taikyti šį naujinimą, turite įdiegti .NET Framework 3.5 arba 4.8.

Reikia paleisti iš naujo

Pritaikę šį naujinimą, turite iš naujo paleisti kompiuterį, jei naudojami paveikti failai. Rekomenduojame išeiti iš visų ".NET Framework" pagrįstų programų prieš taikant šį naujinimą.

Kaip gauti šio naujinimo žinyną ir palaikymą