บทความนี้อธิบายถึงปัญหาที่เกิดขึ้นใน Active Directory สหพันธรัฐบริการ (AD FS) ใน Windows Server 2012 R2 ของ โปรแกรมแก้ไขด่วนจะพร้อมใช้งานเมื่อต้องการแก้ไขปัญหานี้ โปรแกรมแก้ไขด่วนมีข้อกำหนดเบื้องต้น
อาการ
สมมติว่า คุณตั้งค่าการรักษาความปลอดภัยยืนยันมาร์กอัปภาษา (SAML) ขึ้นฝ่ายใน FS โฆษณา คุณลงทะเบียนอะแดปเตอร์รับรองความถูกต้องด้วยหลายปัจจัย (MFA) ภายนอก และตั้ง FS โฆษณาจะเรียกนั้น ในสถานการณ์นี้ เมื่อมีการรับรองความถูกต้องล้มเหลวจะเกิดข้อยกเว้นของอะแดปเตอร์ MFA, FS โฆษณาไม่เรียกเหตุการณ์ OnError แทน FS โฆษณาส่งข้อผิดพลาดกลับมายัง SAML ขึ้นของบริษัท
ข้อมูลโปรแกรมแก้ไขด่วน
สิ่งสำคัญ ถ้าคุณติดตั้งชุดภาษาหลังจากที่คุณติดตั้งโปรแกรมแก้ไขด่วนนี้ คุณต้องติดตั้งโปรแกรมแก้ไขด่วนนี้ ดังนั้น เราขอแนะนำให้ คุณติดตั้งภาษาใด ๆ ชุดที่คุณต้องการก่อนที่คุณติดตั้งโปรแกรมแก้ไขด่วนนี้ สำหรับข้อมูลเพิ่มเติม ดูชุดภาษาเพิ่มลงใน Windows
มีโปรแกรมแก้ไขด่วนที่รองรับพร้อมให้บริการจาก Microsoft อย่างไรก็ตาม โปรแกรมแก้ไขด่วนนี้มุ่งหวังเพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น ใช้ hotfix นี้เฉพาะกับระบบต่าง ๆ ที่พบปัญหานี้
หากโปรแกรมแก้ไขด่วนพร้อมใช้งานสำหรับการดาวน์โหลด คุณจะเห็นส่วน "โปรแกรมแก้ไขด่วนดาวน์โหลดพร้อมใช้งาน" ที่ด้านบนของบทความฐานข้อมูลองค์ความรู้นี้ หากส่วนนี้ไม่ปรากฏขึ้น ส่งคำขอการสนับสนุนและบริการลูกค้าของ Microsoft เพื่อรับโปรแกรมแก้ไขด่วน
หมายเหตุ ถ้ามีปัญหาอื่น ๆ เกิดขึ้น หรือถ้าจำเป็นต้องแก้ไขปัญหาใด ๆ คุณอาจต้องสร้างคำขอรับบริการแยกต่างหาก ระบุต้นทุนในการสนับสนุนปกติจะใช้กับคำถามเพิ่มเติมและเรื่องอื่น ๆ ที่ไม่มีสิทธิได้รับโปรแกรมแก้ไขด่วนนี้เฉพาะ สำหรับรายชื่อทั้งหมด ของหมายเลขโทรศัพท์ของฝ่ายบริการลูกค้าของ Microsoft และการสนับสนุน หรือ เพื่อสร้างการร้องขอบริการแยกต่างหาก ไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
http://support.microsoft.com/contactus/?ws=supportหมายเหตุ แบบฟอร์ม "โปรแกรมแก้ไขด่วนดาวน์โหลดพร้อมใช้งาน" แสดงภาษาโปรแกรมแก้ไขด่วนจะพร้อมใช้งาน ถ้าคุณไม่เห็นภาษาของคุณ อาจเป็น เพราะไม่มีโปรแกรมแก้ไขด่วนพร้อมใช้งานสำหรับภาษานั้น
ข้อกำหนดเบื้องต้น
เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องมีเดือน 2014 เมษายนปรับปรุงสะสมสำหรับ Windows RT 8.1, Windows 8.1 และ Windows Server 2012 R2 การ (2919355)ใน Windows Server 2012 R2 ของการติดตั้ง
ข้อมูลรีจิสทรี
เมื่อต้องการใช้โปรแกรมแก้ไขด่วนในแพ็คเกจนี้ คุณไม่จำเป็นต้องทำการเปลี่ยนแปลงใด ๆ ในรีจิสทรี
ข้อกำหนดการรีสตาร์ท
คุณอาจต้องรีสตาร์ทคอมพิวเตอร์หลังจากใช้โปรแกรมแก้ไขด่วนนี้
ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน
โปรแกรมแก้ไขด่วนนี้ไม่แทนโปรแกรมแก้ไขด่วนที่ออกมาก่อนหน้านี้
รุ่นสากลของโปรแกรมแก้ไขด่วนนี้ติดตั้งแฟ้มที่มีแอตทริบิวต์ที่แสดงในตารางต่อไปนี้ วันที่และเวลาสำหรับแฟ้มเหล่านี้จะแสดงรายการไว้ในรูปแบบเวลามาตรฐานสากล (UTC) วันที่และเวลาสำหรับแฟ้มเหล่านี้บนเครื่องคอมพิวเตอร์เฉพาะที่ของคุณจะแสดงผลตามเวลาท้องถิ่นของคุณร่วมกับความโน้มเอียงของเวลาตามฤดูกาล (DST) ในปัจจุบันของคุณ นอกจากนี้ วันที่และเวลาอาจจะเปลี่ยนแปลงไปได้อีกด้วยเมื่อคุณดำเนินการบางอย่างกับแฟ้มนี้
Windows Server 2012 R2 ของแฟ้มข้อมูลและบันทึกย่อ
สิ่งสำคัญ โปรแกรมแก้ไขด่วน 8.1 ของ Windows และโปรแกรมแก้ไขด่วนของ Windows Server 2012 R2 การรวมอยู่ในแพคเกจเดียวกัน อย่างไรก็ตาม โปรแกรมแก้ไขด่วนบนเพจคำขอโปรแกรมแก้ไขด่วนปรากฏอยู่ภายใต้ระบบปฏิบัติการทั้งสอง เมื่อต้องการร้องขอแพคเกจโปรแกรมแก้ไขด่วนที่ใช้กับระบบปฏิบัติการหนึ่ง หรือทั้งสอง เลือกโปรแกรมแก้ไขด่วนที่อยู่ภายใต้ "Windows 8.1/Windows Server 2012 R2"ในหน้า อ้างอิงส่วน "นำไปใช้กับ" ในบทความเสมอเพื่อกำหนดระบบปฏิบัติการจริงที่จะนำโปรแกรมแก้ไขด่วนแต่ละโปรแกรมไปใช้ด้วย
-
แฟ้มที่นำไปใช้กับผลิตภัณฑ์เจาะจง หลักเป้าหมาย (RTM, SPn), และสาขาเซอร์วิส (LDR, GDR) สามารถระบุได้ ด้วยการตรวจสอบหมายเลขรุ่นของแฟ้มดังที่ปรากฏในตารางต่อไปนี้:
รุ่น
ผลิตภัณฑ์
หลักเป้าหมาย
สาขาเซอร์วิส
6.3.960 0.17xxx
Windows Server 2012 R2
RTM
GDR
-
แฟ้ม MANIFEST (.manifest) และแฟ้ม MUM (.mum) ซึ่งติดตั้งสำหรับแต่ละสภาพแวดล้อมจะแสดงรายการแยกต่างหากในส่วน "ข้อมูลแฟ้มเพิ่มเติม" แฟ้ม MUM, MANIFESTและ แฟ้มแค็ตตาล็อก (.cat) การรักษาความปลอดภัยที่เกี่ยวข้อง มีความสำคัญมากในการรักษาสถานะของคอมโพเนนต์ปรับปรุงแล้ว แฟ้มแค็ตตาล็อกการรักษาความปลอดภัยซึ่งแอตทริบิวต์ไม่ได้แสดงรายการไว้จะได้รับการลงชื่อด้วยลายเซ็นดิจิทัลของ Microsoft
สำหรับทั้งหมดได้รับการสนับสนุน Windows Server 2012 R2 ของรุ่นที่ใช้ x64
ชื่อแฟ้ม |
รุ่นของแฟ้ม |
ขนาดของแฟ้ม |
วันที่ |
เวลา |
แพลตฟอร์ม |
---|---|---|---|---|---|
Microsoft.identityserver.diagnostics.dll |
6.3.9600.17995 |
151,552 |
25-Jul-2015 |
02:29 |
x86 |
Microsoft.identityserver.proxyservice.exe |
6.3.9600.17995 |
73,216 |
25-Jul-2015 |
02:29 |
x86 |
Microsoft.identityserver.proxyservice.exe.config |
ไม่มีข้อมูล |
1,067 |
15-Mar-2014 |
00:10 |
ไม่มีข้อมูล |
Microsoft.identityserver.service.dll |
6.3.9600.17995 |
695,296 |
25-Jul-2015 |
02:29 |
x86 |
Microsoft.identityserver.webhost.dll |
6.3.9600.17995 |
175,104 |
25-Jul-2015 |
02:29 |
x86 |
Microsoft.identityserver.web.dll |
6.3.9600.17995 |
814,080 |
25-Jul-2015 |
02:29 |
x86 |
Microsoft.identityserver.dll |
6.3.9600.17995 |
653,824 |
25-Jul-2015 |
02:29 |
x86 |
ข้อมูลแฟ้มเพิ่มเติม
ข้อมูลแฟ้มเพิ่มเติมสำหรับ Windows Server 2012 R2 ของ
แฟ้มเพิ่มเติมสำหรับทั้งหมดได้รับการสนับสนุน Windows Server 2012 R2 ของรุ่นที่ใช้ x64
คุณสมบัติแฟ้ม |
ค่า |
---|---|
ชื่อแฟ้ม |
Amd64_0540d909ecff79309c354489c59cee89_31bf3856ad364e35_6.3.9600.17995_none_815c4e1a1c3bd77a.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_08ce306e04ad23987e3f070cd3da8fde_31bf3856ad364e35_6.3.9600.17995_none_dadf952d96134989.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_2068e19c8d664fad4df5784b79e98eba_31bf3856ad364e35_6.3.9600.17995_none_cf399c766f478d87.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_2f42d091be8ce13b7822048bab0fdc96_31bf3856ad364e35_6.3.9600.17995_none_d3afe48319953f13.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_34f8867638d83d1ab0d5d9c2db2b2ae1_31bf3856ad364e35_6.3.9600.17995_none_4439ab056787e3ee.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_56eb335c4a6d8f90eb9bafee8bbdb70e_31bf3856ad364e35_6.3.9600.17995_none_a70082d253165e21.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
718 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_6568b6a28d7cf24137813b10d1e4552a_31bf3856ad364e35_6.3.9600.17995_none_d1da7fe30ddecca3.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_8f6f386d084a8c9a9c749d684fbdd68f_31bf3856ad364e35_6.3.9600.17995_none_9874d9677f31deef.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_9844af450b682749787ab18ffdb8592d_31bf3856ad364e35_6.3.9600.17995_none_e16fbb99fa4162ab.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_9fda583bff37e14c9ba80459fd3b4b3b_31bf3856ad364e35_6.3.9600.17995_none_dae546665950bec9.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_a48442ba5b917c9d567d520caf2ed94d_31bf3856ad364e35_6.3.9600.17995_none_1840e8ed64a23989.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_b4e7de733f7b7eda8a230f777a9abf6d_31bf3856ad364e35_6.3.9600.17995_none_816d49da5900c654.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_b7cb0ad63b2d1de7923c142077818258_31bf3856ad364e35_6.3.9600.17995_none_3bfb798cb0b015e9.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_bdc6cf40f606372a2141930e28cd32d4_31bf3856ad364e35_6.3.9600.17995_none_31f84838758490e4.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_bf3b4b2bdcf50ec615b4f8fa1cc150e7_31bf3856ad364e35_6.3.9600.17995_none_bfcd2c999b454ef3.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_bfbfda61f37dbaafa5fa09f7e06e9183_31bf3856ad364e35_6.3.9600.17995_none_d53f6aa18d42a608.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_c1a3f1627df8ccf6d6271053f4ef6ed8_31bf3856ad364e35_6.3.9600.17995_none_0d88ea6400f46e1c.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_c70f20da17a9ceef8b407697d81c6b62_31bf3856ad364e35_6.3.9600.17995_none_dfb313e6e9a87841.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
710 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_ded898f97b41d531261fa393b51f01c7_31bf3856ad364e35_6.3.9600.17995_none_fcfdd06e7a0c5236.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
714 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_e340ebe9324e5214fd316b8f704c372a_31bf3856ad364e35_6.3.9600.17995_none_6195be8c19b652aa.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
2,085 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_ec76cd3b70eee210a8315ce1bbbb9811_31bf3856ad364e35_6.3.9600.17995_none_537272056270e53c.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_f51086fe95a55ff02abbbd79793589c2_31bf3856ad364e35_6.3.9600.17995_none_a3557bdeb5a3380d.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_f7ed6b1946146fc8fc7c4066032d75f6_31bf3856ad364e35_6.3.9600.17995_none_d40841727cf39e42.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
722 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_microsoft-windows-i..yserver-eventtraces_31bf3856ad364e35_6.3.9600.17995_none_3028e51946f105af.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
113,669 |
วัน (UTC) |
24-Jul-2015 |
เวลา (UTC) |
20:10 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Amd64_microsoft.identityserver.nativeresources_31bf3856ad364e35_6.3.9600.17995_none_92d9da5d61747ea7.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
3,928 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Msil_microsoft.identityserver.diagnostics_31bf3856ad364e35_6.3.9600.17995_none_0bed90a2390586da.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
3,350 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Msil_microsoft.identityserver.proxyservice_31bf3856ad364e35_6.3.9600.17995_none_46d67f7be9429f4d.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
4,767 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Msil_microsoft.identityserver.service_31bf3856ad364e35_6.3.9600.17995_none_5cf1acf9002cfe6b.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
3,334 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Msil_microsoft.identityserver.webhost_31bf3856ad364e35_6.3.9600.17995_none_790f1f23e19913da.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
3,334 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Msil_microsoft.identityserver.web_31bf3856ad364e35_6.3.9600.17995_none_0ce3fbbcfc260db0.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
3,318 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
ชื่อแฟ้ม |
Msil_microsoft.identityserver_31bf3856ad364e35_6.3.9600.17995_none_26b07fa07671feb8.manifest |
รุ่นของแฟ้ม |
ไม่มีข้อมูล |
ขนาดของแฟ้ม |
3,302 |
วัน (UTC) |
25-Jul-2015 |
เวลา (UTC) |
02:31 |
แพลตฟอร์ม |
ไม่มีข้อมูล |
สถานะ
Microsoft ยืนยันว่านี่เป็นปัญหาในผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน "นำไปใช้กับ"
ข้อมูลอ้างอิง
ดูคำศัพท์เฉพาะทางที่ Microsoft ใช้เพื่ออธิบายการปรับปรุงซอฟต์แวร์