Artikel ini menjelaskan hotfix rollup 3146714, yang tersedia untuk Microsoft .NET Framework 4.6 dan 4.6.1. Untuk informasi selengkapnya tentang masalah yang diperbaiki rollup hotfix, lihat bagian "Masalah yang diperbaiki rollup hotfix ini".
Pemecahan Masalah
Hotfix yang sesuai dengan KB3146714 telah menggantikan dengan pembaruan terbaru .NET Framework, yang berisi semua perbaikan yang sebelumnya disertakan dalam KB3146714. Disarankan untuk menginstal pembaruan terkini dari .NET Framework.
Untuk informasi selengkapnya tentang cara mengunduh file dukungan Microsoft, klik nomor artikel berikut untuk melihat artikel di Basis Pengetahuan Microsoft:
119591 Cara mendapatkan file dukungan Microsoft dari layanan online Yang dipindai Microsoft untuk virus. Microsoft menggunakan perangkat lunak deteksi virus terbaru yang tersedia pada tanggal file tersebut diposting. File akan disimpan di server keamanan yang disempurnakan untuk membantu mencegah perubahan yang tidak sah pada file.
Catatan Untuk memverifikasi versi pembaruan hotfix, periksa nilai Kata kunci rilis untuk menentukan versi yang diinstal. Agar kompatibel maju, Anda bisa memeriksa nilai yang lebih besar dari atau sama dengan nilai yang tercantum dalam tabel berikut ini.
Versi rollup hotfix |
Nilai DWORD rilis |
---|---|
Hotfix rollup 3146711 untuk versi .NET Framework 4.6 dan yang lebih baru |
394294 |
Untuk informasi selengkapnya tentang cara menentukan versi .NET Framework, lihat Cara: Menentukan versi .NET Framework mana yang diinstal.
Informasi Selengkapnya
Prasyarat
Untuk menerapkan hotfix ini, Anda harus memiliki .NET Framework 4.6 atau 4.6.1 yang diinstal.
Persyaratan mulai ulang
Anda harus memulai ulang komputer setelah menerapkan hotfix ini jika semua file yang terpengaruh sedang digunakan. Kami menyarankan agar Anda menutup .NET Framework aplikasi berbasis hotfix ini sebelum Anda menerapkan hotfix ini.
Informasi penggantian hotfix
Paket hotfix ini tidak menggantikan paket hotfix yang dirilis sebelumnya.
Masalah yang diperbaiki rollup hotfix ini
Masalah CLR JIT
Struktur C# diteruskan oleh referensi, bukan menurut nilai, saat kode dijalankan di komputer yang memiliki instalan .NET Framework 4.6 dan yang menggunakan kompilator RyuJIT. Salah satu gejala bug ini adalah bahwa kode tersebut menunjukkan data dalam pengumpulan dalam urutan yang tidak benar (time-series). Perubahan dalam perilaku dari versi awal .NET Framework menyebabkan berbagai gejala saat klien mengambil data rangkaian waktu dari pengalaman data kami.
Masalah ini terjadi karena bendera lvAddr yang hilang Diekspos untuk variabel tmp yang berfungsi sebagai argumen langsung ref, yang pada gilirannya merusak fase salin prop.
Masalah CLR
Masalah di loader tipe CLR mungkin mengakibatkan kunci samar saat tipe generik dipulihkan dari gambar asli. Hal ini menyebabkan perintah ngen createpdb gagal. Masalah ini diatasi oleh hotfix ini.
Windows Forms
Ui Windows PrintPreviewDialog Formulir diinisialisasi sangat lambat ketika kondisi berikut ini benar:
-
Printer jaringan digunakan.
-
Preferensi pengguna untuk printer ini, seperti pengaturan dupleks, akan diubah.
Kami menambahkan optimisasi kinerja terhadap skenario ini. Jika pengaturan halaman tidak diubah untuk halaman tertentu, pengaturan printer untuk halaman ini tidak diterapkan kembali (dengan mengakses spooler printer). Jika aplikasi memodifikasi pengaturan printer dengan menggunakan penanganan kejadian QueryPageSettings , pratinjau cetak kinerja pembuatan halaman yang terpengaruh tidak berkembang meskipun bendera memilih sudah diatur.
Untuk memilih optimisasi ini, kunci berikut harus ditambahkan ke file app.config tergantung pada versi file .NET Framework:
.NET Framework 4.5.2:
<?xml version="1.0" encoding="utf-8"?>
<konfigurasi>
< appSettings >
< add key="OptimizePrintPreview" value="true" />
< /appSettings >
</configuration> .NET Framework 4.6 atau versi yang lebih baru:
<?xml version="1.0" encoding="utf-8"?>
<konfigurasi>
< runtime>
< nilai AppContextSwitchOverrides = "Switch.System.Drawing.Printing.OptimizePrintPreview=true" />
< /runtime>
</configuration> If an application can run on either version of the .NET Framework, use both switches in the same file.
Untuk menolak, hapus sakelar, atau setel nilai ke salah.
ClickOnce anda
ClickOnce telah diperbarui ke mendukung TLS 1.1 dan 1.2.
ClickOnce secara otomatis mendeteksi protokol TLS yang diperlukan saat runtime. Tidak ada langkah tambahan yang diperlukan ClickOnce untuk mengaktifkan fungsionalitas ini.
Ingat ClickOnce terus mendukung TLS 1.0 untuk masa mendatang yang dapat dipertimbangkan, meskipun belum lagi dianggap sesuai dengan PCI.