Applies To.NET Framework 4.6.1 .NET Framework 4.6.2 Windows 8.1 Windows RT 8.1 Windows Server 2012 R2 Datacenter Windows Server 2012 R2 Essentials Windows Server 2012 R2 for Embedded Systems Windows Server 2012 R2 Foundation Windows Server 2012 R2 Standard

ดูผลิตภัณฑ์และระบบปฏิบัติการที่บทความนี้ใช้ บทความนี้จะอธิบายเกี่ยวกับ3139550ด่วนที่พร้อมใช้งาน.NET Framework Microsoft .NET Framework 4.6.1 และ .NET Framework 4.6 บน Windows 8.1, Windows RT 8.1 และ Windows Server 2012 R2 For more information about the fixes in this hotfix rollup, see the "Issues that this hotfix rollup fixes" section.

การแก้ไข

ดาวน์โหลดข้อมูล

โปรแกรมแก้ไขด่วนที่สอดคล้องกับ KB3139550 ถูกแทนที่ด้วยการอัปเดตล่าสุดของ .NET Framework ซึ่งมีการแก้ไขทั้งหมดที่รวมอยู่ใน KB3139550 ก่อนหน้านี้ It is recommended to install the latest updates of .NET Framework.

For more information about how to download Microsoft support files, click the following article number to go to the article in the Microsoft Knowledge Base:

119591 วิธีการรับไฟล์สนับสนุนของ Microsoft จากบริการออนไลน์ที่ Microsoft สแกนไฟล์นี้เพื่อหาไวรัส Microsoft ใช้ซอฟต์แวร์ตรวจหาไวรัสล่าสุดที่พร้อมใช้งานในวันที่โพสต์ไฟล์ ไฟล์จะถูกจัดเก็บบนเซิร์ฟเวอร์ที่มีการปรับปรุงความปลอดภัย ซึ่งช่วยป้องกันการเปลี่ยนแปลงใดๆ ที่ไม่ได้รับอนุญาตในไฟล์

ข้อมูลเพิ่มเติม

ข้อกำหนดเบื้องต้น

เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องติดตั้ง .NET Framework 4.6.1 หรือ .NET Framework 4.6  

ความต้องการในการเริ่มระบบใหม่

คุณต้องรีสตาร์ตคอมพิวเตอร์หลังจากที่คุณใช้โปรแกรมแก้ไขด่วนนี้ถ้ามีการใช้ไฟล์ที่ได้รับผลกระทบ เราขอแนะ.NET Frameworkให้คุณปิดแอปพลิเคชัน.NET Frameworkพื้นฐานทั้งหมดก่อนที่คุณจะใช้โปรแกรมแก้ไขด่วนนี้  

ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน

แพคเกจโปรแกรมแก้ไขด่วนนี้ไม่ได้แทนที่แพคเกจโปรแกรมแก้ไขด่วนที่เผยแพร่ก่อนหน้านี้

ปัญหาที่การแก้ไข Rollup การแก้ไขด่วนนี้

ปัญหาที่ 1

เมื่อแอปพลิเคชัน WPF ใช้ TreeViewItem ภายนอกบริบทของ TreeView แอปพลิเคชันอาจพบข้อยกเว้น InvalidCastException ที่มีการติดตามสแตกเริ่มต้นดังต่อไปนี้: ระบบ Windows Controls.VirtualizingStackPanel.FindScrollOffset(Visual v) หมายเหตุ ข้อยกเว้นนี้เกิดขึ้นเมื่อ TreeViewItem อยู่ในตัวควบคุมรายการเสมือน (ตัวอย่างเช่น ตัวควบคุม ListBox, DataGrid หรือ ListView) ที่พยายามค้นหาออฟเซตการเลื่อนของ TreeViewItem หรือหนึ่งในรายการจากมากไปหาน้อย ตัวอย่างเช่น ข้อยกเว้นนี้จะเกิดขึ้นถ้าคุณประกาศ TreeViewItem เป็นรากของ DataTemplat1 และ DataTemplats จะถูกใช้เป็น CellTemplats ของคอลัมน์ DataGrid  

ปัญหาที่ 2

ทั้ง System.Web.Caching และ System.Runtime.Caching จะรายงานขนาดของหน่วยความจําที่ใช้โดย AppDomain ทั้งหมดแทนหน่วยความจําที่ใช้โดยรายการแคชนี่คือการถดถอยจาก.NET Framework 4.5 เนื่องจากการเปลี่ยนแปลงในการปรับใช้ตัวจับเวลา นอกจากการรายงานขนาดที่ไม่ถูกต้อง วัตถุเพิ่มเติมที่ถูกอ้างอิงโดยแคชอาจมีผลต่อเวลาแฝง Gen2 GC อย่างมาก ในสถานการณ์การโฮสต์ ASP.NET แคชจะคํานวณขนาดของแคชทั้งหมดในโดเมนแอปทั้งหมด (ตามที่รายงานผ่านตัวนับประสิทธิภาพการจํากัดหน่วยความจําแคช % กระบวนการที่ใช้ ASP.NET" เมื่อโดเมนแอปถูกรีไซเคิลการแก้ไขนี้จะเอาการอ้างอิงโดยไม่ได้ตั้งใจออกจากแคชไปยังวัตถุโดเมนแอปอื่นเพื่อให้มีการรายงานขนาดที่ถูกต้อง การแก้ไขนี้ยังรวมถึงการเปลี่ยนแปลงเพื่อปรับปรุงเวลาแฝงของ System.Runtime.Caching บนคอมพิวเตอร์หลายเครื่องที่ใช้ Server GC นอกจากนี้ หลังจากการแก้ไขนี้ถูกใช้ ขนาดของแคชทั้งหมดในสถานการณ์การรีไซเคิลโดเมนแอปจะถูกคํานวณอย่างถูกต้อง  

ปัญหาที่ 3

เมื่อคุณมีแอปพลิเคชัน Windows Presentation Foundation (WPF) ที่อาศัยการโปรโมตเมาส์แบบสัมผัสในการจัดการการโต้ตอบของผู้ใช้แบบสัมผัส (แทนการใช้เหตุการณ์ระบบสัมผัสโดยตรง) คุณอาจพบกับการย้ายเมาส์ที่เลื่อนระดับในระดับต่าผิดปกติก่อนหน้านี้ โปรโมชันเมาส์แบบควบคุมปริมาณ WPF ของการเคลื่อนไหวแบบสัมผัสเพื่อหลีกเลี่ยงการเคลื่อนไหวแบบสัมผัสปริมาณมาก ใน.NET Framework 4.6.1 การแก้ไขถูกเริ่มเพื่อควบคุมจํานวนการย้ายระบบสัมผัสที่ถูกประมวลผล หลังจากการเปลี่ยนแปลงนี้ การควบคุมจํานวนโปรโมชันเมาส์ที่เกิดจากการลดจํานวนการเคลื่อนย้ายเมาส์ที่ถูกสร้างขึ้น ขณะนี้การควบคุมปริมาณการเลื่อนเมาส์ถูกเอาออกแล้ว ดังนั้นในตอนนี้ควรมีความสอดคล้องเกือบหนึ่งต่อหนึ่งระหว่างเหตุการณ์การย้ายแบบสัมผัสและเหตุการณ์การย้ายเมาส์ที่มีเลื่อนระดับ  

ปัญหา 4

สมมติว่าคุณใช้งานแอปพลิเคชัน WPF ที่เป้าหมายที่.NET Framework 4.6 คุณพยายามตั้งค่า CurrentThread.CurrentCulture หรือ CurrentThread.CurrentUICulture ในวิธีใดๆ ที่ถูกเรียกใช้โดย WPF Dispatcher โดยใช้ DispatcherOperation ตัวอย่างเช่น คุณพยายามตั้งค่านี้ตัวจัดการเหตุการณ์ UI หรือตัวสร้าง MainWindow ในสถานการณ์นี้ ค่า CurrentCulture และ CurrentUICulture จะถูกรีเซ็ตเป็นค่าก่อนหน้าตามลําดับที่ส่วนท้ายของวิธี ถ้าแอปพลิเคชันตั้งค่า CurrentUICulture ในตัวสร้าง MainWindow หรือในตัวจัดการ การคลิกปุ่ม การตั้งค่าจะเปลี่ยนกลับไปเป็น CULTURE UI ของระบบการแก้ไขนี้ช่วยให้แน่ใจว่าค่า CurrentThread.CurrentCulture/CurrentUICulture ที่ถูกตั้งค่าในวิธีการในแอปพลิเคชัน WPF จะคงอยู่ในลักษณะเดียวกับก่อนค่า .NET Framework 4.6  

ปัญหา 5

ใน.NET Framework 4.6 ค่าสถานะใหม่ TaskContinuationOptions.RunContinuationsAsynchronously จะถูกเพิ่มลงในไลบรารี งาน อย่างไรก็ตาม เมื่อคุณใช้ค่าสถานะนี้ร่วมกับ Task.WhenAll, Task.WhenAny หรือ Task.Unwrap ค่าสถานะจะไม่มีผล ธงถูกแนะให้รู้จักเพื่อหลีกเลี่ยงสภาพการล็อกตายบางประการ การแก้ไขนี้ช่วยให้แน่ใจว่างานทุกประเภทจะมีความต่อเนื่องตามค่าสถานะใหม่  

ปัญหา 6

ใน .NET Framework 4.6 มีข้อผิดพลาดใน AppContext ที่ก่อให้เกิดความปลอดภัยของเธรดของวิธีการ AppContext ถูกปรับใช้อย่างไม่ถูกต้อง AppContext เป็นส่วนหนึ่งของโครงสร้างพื้นฐานเพื่อลดการเปลี่ยนแปลง คุณสามารถใช้ AppContext เพื่อตั้งค่าและรับค่าสถานะ และเพื่อตัดสินใจในแอปพลิเคชันของคุณโดยยึดตามข้อมูลนั้นการแก้ไขนี้จะเปิดใช้งานความปลอดภัยเธรดที่ถูกต้องให้กับวิธีการบน AppContext ที่เกี่ยวข้องกับการตั้งค่าและการดึงค่าสวิตช์  

ปัญหาที่ 7

เมื่อคุณพบกับกรณีขอบที่มีรูปแบบการจัดสรรและการคงอยู่ของคุณ และคุณต้องการส่วนใหม่บนฮีปที่มีการจัดการของคุณ ถังขยะสามารถคํานวณขนาดการยืนยันที่มีขนาดเล็กกว่าที่ควรจะเป็น ซึ่งก่อให้เกิดการละเมิดการเข้าถึงระหว่างระยะการกระชับเนื่องจากถังขยะพยายามเขียนหน่วยความจําแบบไม่เข้าไว้การแก้ไขนี้จะคํานวณขนาดอย่างถูกต้อง  

ปัญหาที่ 8

เมื่อคุณสร้างรหัสดั้งเดิมของบางวิธี แอปพลิเคชัน.NET Frameworkและกระบวนการ NGEN อาจพบกับการหยุดการหยุดที่คาดไว้

ปัญหาที่ 9

RyuJit สร้างคําแนะนําที่ไม่ถูกต้องเพื่อเปรียบเทียบจํานวนเต็มที่ไม่มีลายเซ็น 16 บิตบน Registers สร้างผลลัพธ์ที่ไม่ถูกต้องถ้าค่าที่ป้อนมีค่า MSB แตกต่างกัน และถ้าเปรียบเทียบคําแนะนําที่ถูกสร้างขึ้นโดยใช้ตัวถูกตัวถูกลงทะเบียนการแก้ไขนี้สร้างคําแนะนําที่ถูกต้อง  

นำไปใช้กับ

บทความนี้ใช้ได้กับรายการต่อไปนี้:  

  • Microsoft .NET Framework 4.6.1

  • Microsoft .NET Framework 4.6 เมื่อใช้กับ:  

    • Windows 8.1

    • Windows RT 8.1

    • Windowsศูนย์ข้อมูล R2 Server 2012

    • Windows Server 2012 R2 Essentials

    • Windows Server 2012 R2 for Embedded Systems

    • Windows Server 2012 R2 Foundation

    • Windowsมาตรฐาน R2 Server 2012

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย