Pratinjau Pembaruan Kumulatif KB4562900 21 Juli 2020 untuk .NET Framework 3.5 dan 4.8 untuk Windows 10 Versi 1903 dan Windows Server RTM 1903 dan Windows 10, versi 1909 dan Windows Server, versi 1909

Berlaku Untuk
.NET

Catatan

  • Tanggal Rilis:
    21 Juli 2020
  • Versi:
    .NET Framework 3,5 dan 4,8

Pembaruan 21 Juli 2020 untuk Windows 10 Versi 1903 dan Windows Server RTM 1903 dan Windows 10, versi 1909 dan Windows Server, versi 1909 menyertakan penyempurnaan 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 Persyaratan prasyarat dan Mulai ulang persyaratan .

Penyempurnaan kualitas dan keandalan

CLR1 - Perubahan dalam .NET Framework 4.8 skenario EnterpriseServices tertentu yang menyebabkan objek apartemen satu utas dapat diperlakukan sebagai apartemen multi-utas dan menyebabkan kegagalan pemblokiran. Perubahan ini sekarang mengidentifikasi objek apartemen satu utas dengan benar dan menghindari kegagalan ini.
- Mengatasi masalah dalam perakitan dengan data profil IBC yang menyebabkan proses pekerja Ngen mengalami crash dan jatuh kembali ke gambar asli penuh.
- Alamat yang jarang terjadi crash yang bisa terjadi selama pengiriman pembatalan utas.
SQL - SqlBulkCopy.WriteToServer dapat menyebabkan transaksi ke tabel SQL dalam memori, gagal. Klien mungkin melihat pengecualian dengan pesan "Waktu Eksekusi Habis 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, menyebabkan server membatalkan transaksi untuk tabel dalam memori.
ASP.NET - Gunakan hash yang sesuai dengan FIPS dalam data telemetri ASP.Net.
- Mengatasi masalah ketika "Tidak ditentukan" bukan nilai yang diperbolehkan dalam konfigurasi untuk atribut 'cookieSameSite' dari bagian konfigurasi status sesi dan autentikasi formulir.
WPF2 - Mengatasi masalah ketika pemeriksaan ejaan diaktifkan di WPF TextBox atau RichTextBox, kata-kata seperti "dll.", "misalnya." diidentifikasi sebagai kesalahan ejaan secara tidak benar.
- Mengatasi masalah ketika beberapa aplikasi WPF sadar Per-Monitor yang berjalan pada .NET 4.8 kadang-kadang mungkin mengalami crash dengan pengecualianSystem.ComponentModel.Win32Exception.
- Mengatasi masalah ketika TextBlock melakukan reflow (membuat keputusan pemisah baris yang berbeda) selama perenderan dan uji tabrak, vs. selama pengukuran. Gejalanya meliputi teks yang hilang, dan FailFast mengalami crash selama pemrosesan teks terprogram.
- Mengatasi masalah dengan kegagalan utas render yang disebabkan oleh HostVisual memutuskan sambungan targetnya pada utas yang salah.
- Mengatasi masalah dengan hang saat menggulir TreeView yang pohonnya tidak seragam, dalam arti bahwa anak-anak simpul yang diberikan mengatur subtrees yang ukurannya sangat berbeda.
- Mengatasi masalah dengan crash yang dapat terjadi saat menutup tipsalat yang ditutup kembali oleh kode pengguna.
- Ketika HwndHost meninggalkan pohon visual, jejak tumpukan dibuat. Ini mahal, dan biasanya tidak perlu. Logika sekarang diubah untuk membuat jejak tumpukan hanya ketika kondisi anomal muncul.
- Alamat kebocoran memori di System.Speech.SpeechSynthesizer.
- Perintah Salinan DataGrid memberikan pengecualian jika clipboard sistem dikunci oleh proses lain. Ini crash, karena biasanya tidak ada kode aplikasi di tumpukan untuk menangkap pengecualian. Perilaku TextBox (dan aplikasi lain seperti Notepad, Word, browser) dalam situasi ini adalah gagal secara diam-diam - tidak ada yang disalin ke clipboard, tetapi tidak terkecuali. Aplikasi WPF kini dapat ikut serta dalam perilaku ini dengan mengatur <appSettings><add key="ShouldThrowOnDataGridCopyOrCutFailure" value="false"/><appSettings>dalam file app.config.
- Mengatasi masalah dalam menyusun model internal untuk dokumen FixedPage. Beberapa teks muncul dalam urutan yang salah untuk tujuan operasi pengeditan seperti pemilihan dan salin/tempel.
WCF3 - Ketika menggunakan nama pengguna UPN Windows dengan format yang mirip username@dns.domain dengan properti nama pengguna NetworkCredential ketika menggunakan NetTcpBinding atau NetNamedPipeBinding, WCF akan salah memisahkan nama pengguna dan dns.domain yang menempatkannya ke properti NamaPengguna dan Domain. Ini tidak valid dalam beberapa skenario dan akan mengakibatkan gagal untuk mengautentikasi. Perbaikan ini menghapus modifikasi kredensial saat menggunakan nama pengguna UPN. Modifikasi dapat diaktifkan kembali dengan mengatur AppSetting "wcf:enableLegacyUpnUsernameFix" ke true.
Pustaka Bersih - Alamat kebocoran memori di HttpListener.
Winforms - Mengatasi masalah dengan status dataGridView IsReadOnlyaccessibility: Narator dan alat lain yang mudah diakses membacakan status sel baca-saja.
- Membahas regresi di .NET Framework 4.8 ketika aplikasi yang menggunakan tipe sel ComboBox DataGridView dan telah memilih aksesibilitas Tingkat 3, mungkin mengalami crash terputang saat mengedit sel.
- Mengatasi masalah di ClickOnce RFC3161 kode verifikasi stempel waktu.
Penyempurnaan Aksesibilitas Winforms Dalam rilis ini, kami menambahkan penyempurnaan aksesibilitas baru yang dapat diikutsertakan oleh aplikasi Anda. Secara default, perubahan ini dinonaktifkan. Aplikasi yang ikut serta dalam fitur aksesibilitas yang diperkenalkan di .NET 4.8 dan yang lebih lama, dapat menambahkan sakelar kompatibilitas berikut ke file konfigurasi aplikasi:
"Switch.UseLegacyAccessibilityFeatures.4=false"
Secara khusus, jika aplikasi menargetkan .NET 4.8, tambahkan bagian AppContextSwitchOverrides berikut:
<?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 kerja yang lebih lama dan ikut serta dalam rangkaian fitur aksesibilitas yang sebelumnya dirilis, lalu tambahkan sakelar tunggal "Switch.UseLegacyAccessibilityFeatures.4=false" ke bagian yang AppContextSwitchOverrides sudah ada:
<?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 yang disertakan dalam rilis ini adalah:- Mengatasi masalah terkait pengumuman item kontrol PropertyGrid dan kategori status diperluas/diciutkan oleh Pembaca Layar.
- Memperbarui pola kontrol Property Grid yang mudah diakses dan elemen dalamnya.
- Memperbarui nama elemen dalam kontrol Property Grid yang mudah diakses untuk membacakan dengan benar oleh pembaca layar.
- Alamat persegi panjang terikat yang mudah diakses untuk kontrol PropertyGridView
- Memungkinkan pembaca layar untuk membacakan sel ComboBox DataGridView diperluas/diciutkan dengan benar.

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

Masalah umum dalam pembaruan ini

Aplikasi Windows Presentation Framework (WPF) yang menggunakan dua atau lebih elemen HostVisual milik utas umum, di mana kedua elemen HostVisual diminta untuk memutuskan sambungan dari target visual mereka secara kasar pada saat yang sama, email gagal dengan kesalahan berikut:

Tipe pengecualian: System.COMException
Pesan: UCEERR_RENDERTHREADFAILURE (0x88980406 HRESULT)
Callstack: top frame adalah System.Windows.Media.Composition.DUCE+Channel.SyncFlush()

Workarounds

Anda dapat menonaktifkan perbaikan bermasalah dengan mengatur sakelar AppContext "Switch.System.Windows.Media.HostVisual.DisconnectsOnWrongThread" ke true, menggunakan salah satu metode yang dijelaskan di sini.  Tindakan ini akan menampilkan aplikasi Anda ke bug asli, jadi Anda harus menghapus sakelar setelah perbaikan diterbitkan melalui pembaruan mendatang.

Penanganan masalah 1

• Tambahkan entri berikut 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 dalam entri tersebut, dipisahkan dari sakelar lain dengan titik koma:

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

Penanganan masalah 2

• Terapkan subkey registri berikut untuk menonaktifkan perbaikan bermasalah untuk semua aplikasi WPF pada mesin.
 Peringatan
Masalah serius mungkin terjadi jika Anda salah mengubah registri menggunakan Editor Registri atau menggunakan metode lain. Masalah ini mungkin mengharuskan Anda menginstal ulang sistem operasi. Microsoft tidak dapat menjamin bahwa masalah ini dapat diatasi. Ubah registri dengan risiko yang Anda tanggung sendiri.

Lokasi: HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework\AppContext\
Nama: Switch.System.Media.HostVisual.DisconnectsOnWrongThread
Tipe: String
Nilai: true

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

Resolusi

Kami sedang berusaha menemukan resolusi dan akan menyediakan pembaruan di rilis mendatang.
 

Cara mendapatkan dan menginstal pembaruan

Instal pembaruan ini

Saluran Rilis Tersedia Langkah Berikutnya
Windows Update dan Microsoft Update Ya Untuk mengunduh dan menginstal pembaruan ini, buka Pengaturan>Pembaruan & Keamanan>Windows Update, lalu pilih Periksa pembaruan.
Katalog Pembaruan Microsoft Ya Untuk mendapatkan paket mandiri untuk pembaruan ini, masuk ke situs web Katalog Pembaruan Microsoft .
Layanan Pembaruan Windows Server (WSUS) Nomor Anda dapat mengimpor pembaruan ini ke WSUS secara manual. Lihat Katalog Pembaruan Microsoft untuk instruksinya.

Informasi file

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

Prasyarat

Untuk menerapkan pembaruan ini, Anda harus memiliki instalasi .NET Framework 3.5 atau 4.8.

Mulai ulang persyaratan

Anda harus memulai ulang komputer setelah menerapkan pembaruan ini jika ada berkas yang terpengaruh yang 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