ในคู่มือนี้ เราจะอธิบายวิธี แก้ไข error 0x4005(16389) เมื่ออัปเกรด Windows ผู้ใช้หลายรายรายงานเจอรหัสข้อผิดพลาดนี้ขณะทำ in-place upgrade ไป Windows 11/10 รหัสข้อผิดพลาดแสดงข้อความ Unable to make changes to your software ตามด้วยข้อความยาวเมื่อเกิดขึ้น

ข้อผิดพลาดนี้เกิดบน SCCM (System Center Configuration Manager) ขณะทำ in-place upgrade SCCM มีฟีเจอร์ปรับใช้ระบบปฏิบัติการและควบคุมระยะไกล ช่วยให้ทำ in-place upgrade ได้ หรือใช้ปรับใช้ระบบปฏิบัติการใหม่บนอุปกรณ์หลายเครื่องพร้อมกัน
ตอนนี้ Error 0x4005(16389) บน SCCM อาจเกิดเมื่อมีแอปพลิเคชันที่ไม่เข้ากันได้กับ Windows 11/10 หลายตัว แม้จะมีเหตุผลอื่นหลายอย่างที่อาจก่อให้เกิดข้อผิดพลาดอัปเกรดนี้ หากคุณเจอรหัสข้อผิดพลาดเดียวกันขณะอัปเกรด Windows บทความนี้จะช่วย คุณจะได้รับวิธีแก้ไขที่ทำงานจริงหลายวิธี ซึ่งรายงานว่าช่วยผู้ใช้ที่ได้รับผลกระทบมากมายแก้ไขข้อผิดพลาดนี้สำเร็จ และอาจทำงานสำหรับคุณเช่นกัน มาตรวจสอบกันเลย
สาเหตุของ Error 0x4005(16389) เมื่ออัปเกรด Windows
รหัสข้อผิดพลาดนี้อาจถูกกระตุ้นจากหลายเหตุผล สำหรับแต่ละบุคคล สาเหตุอาจแตกต่างกัน นี่คือสถานการณ์ทั่วไปที่ทำให้เกิด Error 0x4005(16389) ขณะอัปเกรด Windows:
- ข้อผิดพลาดนี้อาจมาจากพื้นที่ดิสก์ไม่เพียงพอที่จำเป็นสำหรับอัปเกรดอุปกรณ์ หากไม่มีพื้นที่ดิสก์เพียงพอสำหรับ in-place upgrade ควรเคลียร์พื้นที่ดิสก์ให้เพียงพอ แล้วลองอัปเกรดอีกครั้ง
- อีกสาเหตุหนึ่งคือใช้ Windows Edition ต่างกันในการอัปเกรดจากเวอร์ชันที่ใช้อยู่ หากเป็นกรณีนี้ ให้เลือก Windows Edition เดียวกับเวอร์ชันปัจจุบัน
- หากใช้ Antivirus ของบุคคลที่สาม อาจป้องกันไม่ให้อัปเกรดเสร็จสมบูรณ์ ลองปิด Antivirus เพื่อแก้ปัญหา
- กรณีที่พยายามตั้งค่า Local computer description ระหว่าง Task sequence และคำสั่งล้มเหลว อาจได้รหัสข้อผิดพลาดนี้
ขึ้นอยู่กับสถานการณ์ของคุณ สามารถลองแก้ไขข้อผิดพลาดด้วยวิธีที่เหมาะสมจากรายการด้านล่าง
แก้ไข Error Code 0x4005(16389) เมื่ออัปเกรด Windows 11/10
นี่คือวิธีแก้ไขหลักที่ควรลอง:
- ตรวจสอบพื้นที่ดิสก์ (Check Disk Space)
- ปิด Third-Party Antivirus
- ใช้ Windows Edition เดียวกัน
- Uninstall Program as 32-bit Process on 64-Bit Computers
- เปลี่ยนคำสั่ง Local Computer Description
1] ตรวจสอบพื้นที่ดิสก์
ข้อผิดพลาดนี้อาจเกิดหากไม่มีพื้นที่ดิสก์เพียงพอที่จำเป็นสำหรับอัปเกรด Windows พื้นที่ดิสก์ไม่เพียงพอก่อให้เกิดความล้มเหลวและข้อผิดพลาดขณะอัปเดต/อัปเกรด Windows PC ค่อนข้างปกติ ให้แน่ใจว่ามีพื้นที่เพียงพอ หากเป็นกรณีนี้ ลองเคลียร์พื้นที่ดิสก์
สามารถเคลียร์พื้นที่ดิสก์ด้วยฟีเจอร์ Storage Sense หรือ Disk Cleanup บน Windows 11/10 นอกจากนี้ยังมีหลายวิธีเคลียร์พื้นที่ดิสก์ ยังสามารถใช้ซอฟต์แวร์บุคคลที่สาม เช่น Comet (Managed Disk Cleanup) หรือ Cleanmgr+ เพื่อลบไฟล์ขยะและเคลียร์พื้นที่ ยังสามารถใช้ซอฟต์แวร์หาไฟล์ซ้ำและลบฟรี เพื่อลบ duplicates และเคลียร์พื้นที่
หากมีพื้นที่ดิสก์เพียงพอแต่ยังเจอข้อผิดพลาดนี้ ลองวิธีแก้ไขถัดไป
Tip: ดูบทความนี้สำหรับการอัปเกรดอุปกรณ์ที่มีพื้นที่ดิสก์น้อยไป Windows
2] ปิด Third-Party Antivirus
หากใช้ Antivirus บุคคลที่สามบน PC ลองปิดก่อนพยายามอัปเกรด Antivirus รู้จักกันดีว่าบล็อกการกระทำบางอย่างเพราะ False positive หากมันสงสัยการกระทำบางอย่างเกี่ยวกับกระบวนการอัปเกรดเป็นภัยคุกคาม อาจได้รหัสข้อผิดพลาดนี้ ดังนั้น ลองปิด Antivirus แล้วเริ่มกระบวนการ in-place upgrade ใหม่ ดูว่าปัญหา Error 0x4005(16389) แก้ไขได้ไหม
3] ใช้ Windows Edition เดียวกัน
ข้อผิดพลาดนี้อาจมาจากการใช้ Windows Edition ที่ต่างจากที่ติดตั้งอยู่บนระบบ ผู้ใช้บางรายรายงานแก้ไขได้โดยเลือก Windows Media เดียวกัน ให้แน่ใจว่าใช้ Windows Media เดียวกับที่ติดตั้งอยู่ เช่น ใช้ Windows Enterprise media ขณะอัปเกรด หากปัจจุบันใช้ Windows Enterprise edition ดูว่านี่คือปัญหาที่ต้องแก้ไขหรือไม่
หากสถานการณ์นี้ไม่เกี่ยวข้อง ขอไปต่อวิธีแก้ไขถัดไป
4] Uninstall Program as 32-bit Process on 64-Bit Computers

วิธีแก้นี้ใช้ได้เฉพาะ .NET Deployment เท่านั้น หากเจอข้อผิดพลาดขณะปรับใช้ .NET framework ทั้งระบบ มีโอกาสว่ารหัสข้อผิดพลาดถูกกระตุ้นจากโปรแกรมที่รัน 32-bit process บนคอมพิวเตอร์สถาปัตยกรรม 64-bit หากเป็นกรณีนี้ สามารถใช้ checkbox เฉพาะในคุณสมบัติ Installer เพื่อ Uninstall program as 32-bit process on 64-Bit clients นี่คือขั้นตอนเพื่อเปิดใช้งาน checkbox นี้:
- เปิด .NET installer หรือ deployment properties ที่กำลังปรับใช้
- ใน Properties box ไปที่ Program tab
- เปิด Run installation and uninstall program as 32-bit process on 64-bit clients checkbox
- กด Apply > OK เพื่อบันทึก แล้วลองปรับใช้ .NET framework ใหม่ ดูว่าข้อผิดพลาดแก้ไขได้ไหม
หากสถานการณ์นี้ไม่เกี่ยวข้อง ลองวิธีแก้ไขอื่นในคู่มือนี้
5] เปลี่ยนคำสั่ง Local Computer Description Command
หากใช้คำสั่งหรือสคริปต์ตั้งค่า Local computer description ระหว่าง Upgrade task sequence และคำสั่งล้มเหลวหรือหยุด คุณอาจได้รหัสข้อผิดพลาดนี้ หากเป็นกรณีนี้ ลองเปลี่ยนคำสั่งที่ใช้ตั้งค่า Local computer description สามารถใช้คำสั่ง NET CONFIG ทำได้ เพียงเพิ่ม Run Command-Line ใน Task sequence แล้วพิมพ์คำสั่งต่อไปนี้:
cmd /c net config Server /SRVCOMMENT:"%OSDComputerDescription%
คำสั่งนี้จะตั้งค่า Computer description ที่กำหนดในตัวแปร OSDComputerDescription สามารถเปลี่ยนชื่อตัวแปรที่ต้องการได้
หากวิธีที่กล่าวมาไม่มีอะไรช่วย ลองทำ in-place upgrade ด้วย Configuration Manager
จะทำ in-place upgrade ยังไง?
เพื่อทำ in-place upgrade ต้องดาวน์โหลด Windows 10 Installation Media จากเว็บ Microsoft หลังจากนั้น รันไฟล์ executable แล้วเลือก Upgrade PC Now เพื่อเริ่มกระบวนการ in-place upgrade จากนั้นทำตามคู่มือติดตั้งบนหน้าจอเพื่อเสร็จสิ้น สามารถดูขั้นตอนโดยละเอียดได้
หวังว่าคู่มือนี้ช่วยแก้ไข Error 0x4005(16389) ขณะอัปเกรด Windows ได้
นี่คือบทความเพิ่มเติมที่อาจช่วย:
- Windows places 'Upgrade block in place'. Are you affected?
- Fix Windows Upgrade Install error 0x80070002 – 0x3000D
- List of Windows Upgrade error codes and solutions.