บทความนี้อธิบายการยกเลิกโปรแกรมแก้ไขด่วน 3009698 ที่พร้อมใช้งานสำหรับ Microsoft .NET Framework 4.5.2, .NET Framework 4.5.1 และ 4.5 Framework .NET สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาที่รวบรวมโปรแกรมแก้ไขด่วนแก้ไข ดูส่วน "ปัญหาที่สามารถแก้ไขยกเลิกโปรแกรมแก้ไขด่วนนี้"
โปรแกรมติดตั้งเว็บคือ แพ็คเกจขนาดเล็ก (น้อยกว่าหนึ่งเมกะไบต์) ที่กำหนดโดยอัตโนมัติ และดาวน์โหลดเฉพาะส่วนประกอบที่เกี่ยวข้องสำหรับแพลตฟอร์มแบบเฉพาะ
โปรแกรมปรับปรุงนี้เป็นรวมบรรจุภัณฑ์แต่ละต่อไปนี้สำหรับผลิตภัณฑ์ที่แตกต่างกันและแพลตฟอร์มที่
คำอธิบาย |
เลข KB2847882 |
---|---|
.NET Framework 4.5, 4.5.1 และ 4.5.2 บน Windows Vista SP2, Windows Server 2008 SP2, Windows 7 SP1 และ Windows Server 2008 R2 SP1 |
3011114 |
.NET Framework 4.5, 4.5.1 และ 4.5.2 บน Windows 8 และ Windows Server 2012 |
3011112 |
.NET Framework 4.5.1 และ 4.5.2 บน Windows 8.1 และ Windows Server 2012 R2 |
3011110 |
การแก้ปัญหา
โปรแกรมแก้ไขด่วนจะพร้อมใช้งานได้ในขณะนี้จาก Microsoft อย่างไรก็ตาม มีจุดมุ่งหมายที่จะแก้ไขเฉพาะปัญหาที่บทความนี้อธิบายไว้เท่านั้น นำวิธีนี้ไปใช้กับระบบที่ประสบกับปัญหาที่เฉพาะเจาะจงเท่านั้น
หากต้องการแก้ไขปัญหานี้ ให้ติดต่อฝ่ายบริการสนับสนุนลูกค้าของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายชื่อทั้งหมดของหมายเลขโทรศัพท์ของบริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับค่าใช้จ่ายสนับสนุน แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
http://support.microsoft.com/contactus/?ws=supportหมายเหตุ ในกรณีพิเศษ ค่าบริการที่เรียกเก็บตามปกติเมื่อโทรติดต่อฝ่ายสนับสนุนอาจจะยกเลิกได้หาก Microsoft Support Professional ตัดสินว่าโปรแกรมปรับปรุงที่เฉพาะเจาะจงจะแก้ไขปัญหาของคุณได้ ค่าใช้จ่ายในการสนับสนุนตามปกติจะใช้กับคำถามและปัญหาในการสนับสนุนเพิ่มเติมซึ่งไม่สอดคล้องตามเกณฑ์สำหรับโปรแกรมปรับปรุงเฉพาะที่เกี่ยวข้อง
ข้อมูลเพิ่มเติม
ข้อกำหนดเบื้องต้น
เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องมี.NET Framework 4.5.2, .NET Framework 4.5.1 หรือ 4.5 Framework .NET ติดตั้งอยู่
ข้อกำหนดการรีสตาร์ท
คุณต้องรีสตาร์ทคอมพิวเตอร์หลังจากใช้โปรแกรมแก้ไขด่วนนี้ถ้ามีการใช้แฟ้มที่ได้รับผลกระทบใด ๆ เราขอแนะนำให้ คุณปิดโปรแกรมประยุกต์ที่ใช้.NET Framework ทั้งหมดก่อนที่จะใช้โปรแกรมแก้ไขด่วนนี้
ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน
แพคเกจโปรแกรมแก้ไขด่วนนี้ไม่ได้แทนแพคเกจโปรแกรมแก้ไขด่วนที่ออกมาก่อนหน้านี้
การตัดสินค้าจากคลังที่แก้ไขยกเลิกโปรแกรมแก้ไขด่วนนี้
ปัญหาที่ 1
ใน.NET Framework 4.5 แป้นพิมพ์นำทางในตัว WPF TreeViewไม่ทำงานอย่างถูกต้องเมื่อแบบTreeViewItemมีองค์ประกอบ focusable เช่นปุ่มกล่องกาเครื่องหมายหรือกล่องข้อความนั้น กดแป้นลูกศรขึ้นหรือลูกศรลงอาจเปลี่ยนโฟกัสไปยังองค์ประกอบที่ไม่ถูกต้อง หรืออาจเปลี่ยนโฟกัสเลย
โปรแกรมแก้ไขด่วนสามารถแก้ไขปัญหานี้เพื่อให้ลูกศรขึ้นและลูกศรลงเสมอโฟกัสเปลี่ยนเป็นองค์ประกอบถูกต้อง
ปัญหาที่ 2
เมื่อคุณเรียกใช้GlyphRun.InkBoundingBox()หรือใด ๆ ของผู้อยู่ในอุปการะเช่นFormattedText.Extentในโปรแกรมประยุกต์ WPF ค่าที่ส่งกลับจะมีขนาดใหญ่กว่าเล็กน้อยใน 4.5 Framework .NET กว่าใน 4.0 กรอบงาน.NET 4.0 กรอบงาน.NET ที่มีจุดบกพร่องที่เกิดขึ้นบางครั้งในข้อความที่ถูกวาด (ขึ้นอยู่กับแบบอักษร แบบอักษร และอักขระเฉพาะ) ไม่ บักถูกแก้ไขใน 4.5 กรอบงาน.NET ที่ โดยขยายหมึกกล่องขอบเขตเล็กน้อย
โปรแกรมแก้ไขด่วนนี้เพิ่มการตั้งค่าคอนฟิกค่าสถานะเพื่อเข้าร่วมออกจากการแก้ไข โปรแกรมประยุกต์ที่ใช้งานอยู่ออกจะมีค่าเดียวกันที่ส่งกลับใน 4.0 กรอบงาน.NET แต่อาจพบบัก "ข้อความจึงหายไป"
เมื่อต้องการเข้าร่วมออกจากการแก้ไข เพิ่มดังต่อไปนี้ไปยังส่วนappSettingsของแฟ้มการกำหนดค่าของโปรแกรมประยุกต์:<add key="IncludeAllInkInBoundingBox" value="false"/> ปัญหาที่ 3
พิจารณาสถานการณ์สมมติต่อไปนี้:
-
คุณมีโครงการที่มีเว็บ ASP.NET ในเว็บเพจการดำเนินการเรียกกลับไคลเอ็นต์ในเชิงภาษาโปรแกรมได้โดยไม่ต้องส่งคืนใด
-
การกระทำของฟอร์มเป็น URL แบบชื่อโดเมนสากล (ตัวอย่าง ชื่อโดเมนของ URL ประกอบด้วยอักขระแบบ Unicode)
-
ไคลเอ็นต์กำลังใช้ Internet Explorer 10 หรือรุ่นก่อนหน้าของ Internet Explorer
ในสถานการณ์สมมตินี้ ไคลเอ็นต์เว็บเพจที่ไม่ทำงาน ตัวอย่างเช่น ไม่มีอะไรเกิดเมื่อคุณคลิกปุ่มที่ควรจะทริกเกอร์การเรียกกลับ
ปัญหาที่ 4
สมมติว่า คุณสร้างคลาSystem.Workflow.Activities.StateMachineWorkflowActivityร่วมกับคุณสมบัติที่มีกิจกรรมที่ระบุในรายการActivitiesCollection รายการจะประกอบด้วยกิจกรรมต่าง ๆ (ตัวอย่าง กิจกรรมที่อย่าง น้อย 300) ที่มีสถานะและกิจกรรมที่ไม่ใช่รัฐ
ในสถานการณ์นี้ ช่วงการเปลี่ยนภาพกิจกรรมของรัฐที่อยู่ใกล้กับจุดสิ้นสุดของรายการActivitiesCollectionใช้เวลามากจนจบกว่าช่วงการเปลี่ยนภาพกิจกรรมของรัฐที่อยู่ใกล้กับจุดเริ่มต้นของรายการ
โปรแกรมแก้ไขด่วนนี้เอา traversals รายการActivitiesCollectionไม่จำเป็นเมื่อโปรแกรมค้นหาเป้าหมายสถานะกิจกรรมตามชื่อในระหว่างการเปลี่ยนสถานะ ดังนั้น เวลาน้อยจำเป็นต้องเปลี่ยนสถานะกิจกรรมที่อยู่ใกล้กับจุดสิ้นสุดของรายการActivitiesCollectionกัน
ปัญหาที่ 5
สมมติว่า จะเปิดใช้งานตัวนับประสิทธิภาพการทำงานของ WCF อย่างไรก็ตาม บางชื่ออินสแตนซ์จะถูกตัดให้สั้นลงเนื่องจากมีความยาวไม่เกิน 64 อักขระ นอกจากนี้ ชื่ออินสแตนซ์ที่ตัดให้สั้นลงสองอาจเหมือนกัน ในสถานการณ์สมมตินี้ WCF สร้างอินสแตนซ์ตัวนับตามที่คาดไว้
เมื่อต้องการเปิดใช้งานโปรแกรมแก้ไขด่วนนี้ เพิ่มบรรทัดต่อไปนี้appSettingsในแฟ้มการกำหนดค่าของคุณ:<appSettings><add key=" wcf:ensureUniquePerformanceCounterInstanceNames " value="true" />
</appSettings>
หลังจากที่เปิดใช้งานการตั้งค่านี้ WCF จะตรวจหาได้ถ้าสองอินสแตนซ์ชื่อขัดแย้ง และจะเพิ่มแฮเป็นเลขฐานสิบหกแปดตำแหน่งท้ายของชื่อใดชื่อหนึ่ง ซึ่งทำให้ทั้งสองกรณีถูกสร้างเรียบร้อยแล้ว
ปัญหาที่ 6
สมมติว่า คุณใช้ WCF เป็นไคลเอนต์ระดับกลางสำหรับการบริการเว็บไซต์หรือเว็บการสื่อสารกับบริการส่วนหลังสมดุลการโหลดผ่าน HTTP นอกจากนี้ โฮสต์ไว้อย่างใดอย่างหนึ่งอยู่ในสถานะล้มเหลวที่ส่งคืนการตอบสนองของ HTTP พร้อมกับรหัสสถานะ "500"
ในสถานการณ์นี้ การเชื่อมต่อไปยังโฮสต์ไว้ล้มเหลวยังคงมีอยู่ในประเภทการเชื่อมต่อ WCF ChannelFactoryเนื่องจากส่งกลับการตอบสนอง HTTP ที่ถูกต้อง และทำให้อัตราสูงของการร้องขอล้มเหลว ไม่มีกลไกที่พร้อมใช้งานเมื่อต้องการเอาการเชื่อมต่อกับโฮสต์ล้มเหลวซึ่งอาจทำให้การร้องขอเวอร์ล้มเหลว
เมื่อต้องการเปิดใช้งานโปรแกรมแก้ไขด่วนนี้ เพิ่มบรรทัดต่อไปนี้appSettingsในแฟ้มการกำหนดค่าของคุณ: <appSettings> <add key="wcf:httpTransportBinding:useUniqueConnectionPoolPerFactory" value="true"/>
</appSettings>
หลังจากที่เปิดใช้งานโปรแกรมแก้ไขด่วนนี้ แต่ละอินสแตนซ์ของChannelFactoryที่ถูกสร้างขึ้น และที่ใช้การขนส่ง HTTP จะมีกลุ่มของการเชื่อมต่อแยกต่างหาก ซึ่งช่วยให้นักพัฒนาของพวกเขาเชื่อมต่อเป็นกลุ่มต่าง ๆ ที่แยกจากกันโดยการสร้างอินสแตนซ์ของวัตถุChannelFactoryหลายการแบ่งพาร์ติชัน โดยการทำสิ่งนี้ จะปล่อยการเชื่อมต่อกับโฮสต์ล้มเหลว โดยการปิดอินสแตนซ์ChannelFactoryที่เกี่ยวข้องกับการเชื่อมต่อไปยังโฮสต์ล้มเหลว เมื่อปิดอินสแตนซ์ที่ChannelFactoryการเชื่อมต่อในที่เก็บพักไม่ได้ทันทีจะปิดเนื่องจากพวกเขาจะถูกควบคุม โดยลักษณะการทำงานการทำพูลเก็บของคลาสServicePointManager สิ่งสำคัญคือการตั้งค่าเริ่มต้นต่ำหมดเวลาว่างถ้าChannelFactoryหลายออบเจ็กต์จะถูกสร้างขึ้น และปิดในใบสั่งเพื่อป้องกันไม่ให้สถานการณ์ในการเชื่อมต่อไม่ทำงานที่มากอยู่ในสถานะปิดค้างอยู่
ปัญหาที่ 7
สมมติว่า คุณต้องการสนับสนุนจำนวนมากที่ดาวน์โหลดในเวลาเดียวกันหรืออัปโหลดไปยังบริการ WCF ที่แสWebHttpBindingปลายทาง โอนย้ายเนื้อหาของข้อมูลขนาดใหญ่ โดยใช้โหมดการส่งกระแสข้อมูล (แทนที่เป็นโหมดถูกบัฟเฟอร์) จะทำให้บริการประสบปัญหาประสิทธิภาพการทำงานโดยไม่คำนึงถึงว่ามีเพิ่มแบบDispatcherSynchronizationBehavior
หลังจากที่คุณใช้โปรแกรมแก้ไขด่วนนี้ WCF จะใช้การประมวลผลแบบอะซิงโครนัสที่เพิ่มประสิทธิภาพของการดาวน์โหลดในเวลาเดียวกันและอัปโหลดหลายอย่างมาก
โปรแกรมแก้ไขด่วนนี้จะเปิดใช้งานคุณสมบัติAsynchronousSendEnabledของDispatcherSynchronizationBehaviorถูกตั้งค่าเป็นtrue เมื่อต้องการปิดการใช้งานdispatcherSynchronizationBehaviorหรือเอาการตั้งค่าคุณสมบัติAsynchronousSendEnabledเป็นfalse:<system.ServiceModel> <behaviors>
<endpointBehaviors>
<behavior name="MyEndpointBehavior">
<dispatcherSynchronization asynchronousSendEnabled="false" maxPendingReceives="5" />
</behavior>
</endpointBehaviors>
</behaviors>
</system.ServiceModel>
ปัญหาที่ 8
สมมติว่า คุณใช้การปรับปรุงโซนเวลารัสเซีย 2014 กันยายน (ปรับปรุง 2998527) บนคอมพิวเตอร์ของคุณ เมื่อคุณมีโปรแกรมประยุกต์ที่ใช้ Microsoft .NET Framework และTimeZoneInfoคลาส แอพลิเคชันอาจคำนวณเวลาไม่ถูกต้อง ดูการอัพเด 3012229สำหรับรายละเอียดเพิ่มเติม
โปรแกรมแก้ไขด่วนนี้แก้ไขแบบ look-ups ตรงข้ามโซนเวลาพื้นฐาน
ปัญหาที่ 9
สมมติว่า คุณมีโปรแกรมประยุกต์ที่ WPF ที่เปิดหน้าต่างในหน้าต่างหลัก เมื่อคุณปรับขนาดหน้าต่างสอง แอพลิเคชันล้มเหลว และแสดงข้อยกเว้นตัวชี้ null