Applies To.NET

Tanggal rilis:21 juli 2020

Versi: .NET Framework 3,5 dan 4,8

Pembaruan 2020 Juli untuk Windows 10 versi 1903 dan Windows Server 1903 RTM dan Windows 10, versi 1909 dan Windows Server, versi 1909 menyertakan Peningkatan keandalan kumulatif dalam .NET 3,5 dan 4,8. Kami menyarankan agar Anda menerapkan pembaruan ini sebagai bagian dari rutinitas pemeliharaan rutin Anda. Sebelum Anda menginstal pembaruan ini, lihat bagian prasyarat dan persyaratan mulai ulang .

Penyempurnaan kualitas dan keandalan

PB,1

-Perubahan dalam .NET Framework 4,8 akan mengalami masalah dalam skenario EnterpriseServices di mana sebuah objek apartemen dengan satu thread dapat dianggap sebagai apartemen dengan banyak thread dan mengakibatkan kegagalan pemblokiran. Perubahan ini sekarang mengidentifikasi objek apartemen dengan satu thread dengan benar dan menghindari kegagalan ini.

-Membahas masalah dalam rakitan dengan data profil IBC yang menyebabkan proses pengerjaan Ngen menjadi crash dan jatuh kembali ke gambar asli penuh.

-Membahas masalah langka yang dapat terjadi saat pengiriman thread.

SQL

-SqlBulkCopy. WriteToServer bisa menyebabkan transaksi ke tabel SQL dalam memori, untuk gagal. Klien mungkin melihat pengecualian dengan pesan "waktu habis eksekusi kedaluwarsa. Periode waktu habis yang berlalu sebelum penyelesaian operasi atau server tidak merespons. " SqlBulkCopy. WriteToServer mengirimkan token perhatian (pesan pembatalan) setelah mengirim data ke SQL Server, yang menyebabkan server membatalkan transaksi untuk tabel dalam memori.

ASP.NET

-Gunakan hash sesuai FIPS dalam data telemetri ASP.Net.

-Membahas masalah di mana "tidak ditentukan" bukan nilai yang diperbolehkan dalam konfigurasi untuk atribut ' cookieSameSite ' dari bagian formulir autentikasi dan konfigurasi status sesi.

W2

-Membahas masalah saat Pemeriksaan ejaan diaktifkan dalam kotak teks WPF atau RichTextBox, kata seperti "etc.", "misalnya" diidentifikasi sebagai kesalahan ejaan secara tidak benar.

-Membahas masalah saat beberapa aplikasi WPF yang berjalan di .NET 4,8 mungkin mengalami crash dengan exceptionSystem. ComponentModel. Win32Exception.

-Membahas masalah di mana aliran blok teks (membuat keputusan yang berbeda) selama render dan uji hit, vs. selama pengukuran. Gejala-gejalanya termasuk teks yang hilang, dan kegagalan failfast selama pemrosesan teks programatik.

-Membahas masalah dengan kesalahan render thread yang disebabkan oleh HostVisual memutuskan koneksi targetnya di utas yang salah.

-Membahas masalah dengan macet saat menggulir TreeView yang pohon tidak seragam, dalam arti Thata mengatur anak-anak node mengatur subpohon yang ukurannya sangat berbeda.

-Membahas masalah dengan crash yang bisa terjadi ketika menutup tooltip yang tertutup dengan penuh dengan kode pengguna.

-Saat HwndHost meninggalkan pohon visual, jejak stack dibuat. Ini mahal, dan biasanya tidak diperlukan. Logika sekarang diubah untuk membuat jejak stack hanya saat kondisi anomali terjadi.

-Membahas kebocoran memori di System. Speech. SpeechSynthesizer.

-Perintah Salin DataGrid melempar pengecualian jika clipboard sistem dikunci oleh proses lain. Crash ini, karena biasanya tidak ada kode aplikasi pada Stack untuk menangkap pengecualian. Perilaku kotak teks (dan aplikasi lain seperti Notepad, Word, browser) dalam situasi ini adalah gagal secara diam-tidak ada yang disalin ke clipboard, tapi tidak terkecuali. Aplikasi WPF kini dapat memilih perilaku ini dengan mengatur <appSettings> <Tambahkan kunci = "ShouldThrowOnDataGridCopyOrCutFailure" value = "false"/> </appSettings>dalam file App. config-nya.

-Membahas masalah dalam menyusun model internal untuk dokumen FixedPage. Beberapa teks muncul dalam urutan yang salah untuk tujuan operasi pengeditan seperti pilihan dan Salin/tempel.

WCFbintang

-Ketika menggunakan nama pengguna Windows UPN dengan format yang mirip dengan username@dns. domain dalam properti username dari NetworkCredential ketika menggunakan NetTcpBinding atau NetNamedPipeBinding, WCF salah memisahkan nama pengguna dan DNS. domain menempatkannya dalam properti nama pengguna dan domain. Ini tidak valid dalam beberapa skenario dan akan mengakibatkan kegagalan untuk mengautentikasi. Perbaikan ini menghapus pengubahan kredensial ketika menggunakan nama pengguna UPN. Modifikasi dapat diaktifkan kembali dengan mengatur AppSetting "WCF: enableLegacyUpnUsernameFix" ke True.

Pustaka net

-Membahas kebocoran memori di HttpListener.

WinForms

-Membahas masalah dengan DataGridView IsReadOnlyaccessibility State: narator dan alat yang dapat diakses lainnya akan membacakan status baca-saja sel yang sesuai.

-Membahas kemunduran di .NET Framework 4,8 ketika aplikasi menggunakan tipe sel DataGridView ComboBox dan telah memilih aksesibilitas tingkat 3, mungkin mengalami crash sebentar-sebentar saat mengedit sel.

-Membahas masalah dalam kode verifikasi RFC3161 timestamp.

Penyempurnaan aksesibilitas WinForms

Dalam rilis ini, kami menambahkan penyempurnaan aksesibilitas baru yang dapat Anda gunakan untuk masuk. Secara default, perubahan ini dinonaktifkan. Aplikasi yang disertakan dalam fitur aksesibilitas yang diperkenalkan di .net 4,8 dan yang lebih lama, bisa menambahkan Sakelar Kompatibilitas Berikut ini ke file konfigurasi aplikasi:

"Switch.UseLegacyAccessibilityFeatures.4=false"

Khususnya, jika aplikasi menargetkan .NET 4,8, tambahkan BagianAppcontextswitchoverrides berikut ini:

<?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>

Jika aplikasi menargetkan versi kerangka yang lebih lama dan memilih untuk mengatur fitur aksesibilitas yang telah dirilis sebelumnya, maka Tambahkan satu "Switch.UseLegacyAccessibilityFeatures.4=false" beralih ke yang sudah ada AppContextSwitchOverrides penampang

<?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>

Penyempurnaan aksesibilitas WinForms disertakan dalam rilis ini adalah:

-Membahas masalah dengan pengumuman item dan kategori kontrol PropertyGrid dengan pembaca layar.

-Memperbarui pola yang dapat diakses kontrol kisi properti dan elemen batinnya.

-Memperbarui nama elemen dalam kontrol kisi properti yang mudah diakses untuk secara benar mengumumkannya dengan pembaca layar.

-Alamat terikat Rectangle Properties yang dapat diakses untuk kontrol propertygridview

-Memungkinkan pembaca layar untuk mengumumkan status DataGridView ComboBox sel yang diperluas/diciutkan dengan benar.

,1 Runtime bahasa Umum (CLR) 2 Windows Presentation Foundation (WPF) bintang Dasar komunikasi Windows

Masalah yang diketahui dalam pembaruan ini

Aplikasi kerangka presentasi Windows (WPF) yang menggunakan dua elemen visual atau lebih dari utas umum, di mana elemen HostVisual diminta untuk memutuskan sambungan dari target visual mereka pada waktu yang hampir bersamaan, email gagal dengan kesalahan berikut:

Tipe pengecualian: System. COMException Pesan: UCEERR_RENDERTHREADFAILURE (HRESULT 0x88980406) Callstack: Top frame is System. Windows. media. Composition. DUCE + Channel. SyncFlush ()

Solusinya

Anda bisa menonaktifkan perbaikan bermasalah dengan mengatur tombol AppContext "switch. System. Windows. media. HostVisual. Disconnectsonpelanggaran" untuk true, menggunakan salah satu metode yang diuraikan di sini.  Ini akan memunculkan aplikasi Anda ke bug asli, jadi Anda harus menghapus Sakelar setelah perbaikan diterbitkan melalui pembaruan mendatang.

Penanganan masalah 1

• Tambahkan entri berikut ini ke file App. config untuk menonaktifkan perbaikan bermasalah dalam satu aplikasi.

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

Perhatikan bahwa jika konfigurasi aplikasi Anda sudah memiliki entri untuk <AppContextSwitchOverrides>, Anda perlu menambahkan pengaturan baru di dalam entri tersebut, dipisahkan dari switch lainnya dengan tanda titik koma:

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

Penanganan masalah 2

• Terapkan subkunci registri berikut untuk menonaktifkan perbaikan bermasalah untuk semua aplikasi WPF pada komputer.  Perhatian Masalah serius mungkin terjadi jika Anda salah memodifikasi registri dengan menggunakan editor registri atau dengan menggunakan metode lain. Masalah ini mungkin mengharuskan Anda menginstal ulang sistem operasi. Microsoft tidak dapat menjamin bahwa masalah ini dapat diatasi. Mengubah registri dengan risiko Anda sendiri.

Lokasi: HKEY_LOCAL_MACHINE \Software\Microsoft\. NETFramework\AppContext\ Nama: switch. System. media. HostVisual. Disconnectsonpelanggaran Tipe: string Nilai: True

Perhatikan bahwa pada sistem operasi 64-bit, Anda juga perlu menerapkan subkunci registri dengan nama, tipe, dan nilai yang sama di lokasi: HKEY_LOCAL_MACHINE \Software\Wow6432Node\Microsoft\. NETFramework\AppContext\

Pemecahan Masalah

Untuk mengatasi masalah ini, instal pembaruan untuk .NET Framework 3,5 dan 4,8 untuk Windows 10 versi 1903 dan Windows Server 1903 RTM dan Windows 10, versi 1909 dan Windows Server, versi 1909 KB4580980.

 

Cara mendapatkan dan menginstal pembaruan

Menginstal pembaruan ini

Saluran rilis

Digunakan

Langkah berikutnya

Pembaruan Windows dan Pembaruan Microsoft

Ya

Untuk mengunduh dan menginstal pembaruan ini, masuk ke pengaturan > perbarui & keamanan > pembaruan Windows, lalu pilih Periksa pembaruan.

Katalog Microsoft Update

Ya

Untuk mendapatkan paket mandiri untuk pembaruan ini, masuk ke situs web Katalog Pembaruan Microsoft .

Layanan pembaruan Windows Server (WSUS)

Tidak

Anda bisa mengimpor pembaruan ini ke WSUS secara manual. Lihat Katalog Pembaruan Microsoft untuk instruksi.

 

Informasi berkas

Untuk daftar file yang disediakan dalam pembaruan ini, Unduh informasi file untuk pembaruan kumulatif.

Prasyarat

Untuk menerapkan pembaruan ini, Anda harus memiliki .NET Framework 3,5 atau 4,8 yang terinstal.

Persyaratan mulai ulang

Anda harus memulai ulang komputer setelah menerapkan pembaruan ini jika file yang terpengaruh sedang digunakan. Kami menyarankan agar Anda keluar dari semua aplikasi berbasis .NET Framework sebelum menerapkan pembaruan ini.

Cara mendapatkan bantuan dan dukungan untuk pembaruan ini

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.