Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

หลังเชื่อมอุปกรณ์ภายนอก เช่น แฟลชไดรฟ์, พิมพ์เตอร์, สแกนเนอร์ เข้ากับ Windows 7, 8, 10 ผ่านพอร์ต USB อุปกรณ์ที่ติดตั้งไม่ทำงาน เมื่อขยายใน Device Manager อาจเห็นอุปกรณ์ที่ติดตั้งอยู่ใน Universal Serial Bus Controllers หรือแม้แต่ Unknown Devices

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

หากคลิกขวาเลือก Properties จะเจอข้อความผิดพลาด "Windows cannot load the device driver for this hardware because a previous instance of the device driver is still in memory. (Code 38) The driver could not be loaded because a previous version of the driver is still in memory."

ตัวอย่าง: หลังติดตั้ง Windows 10 บนแล็ปท็อป ทำงานดี แต่หยุดอ่านแฟลชไดรฟ์ที่เสียบ เพราะ 0xC000038E USB Driver Error

"The driver could not be loaded because a previous version of the driver is still in memory" หมายความว่าอะไร?

โดยปกติบนระบบ Windows ตราบใดที่อุปกรณ์ภายนอกเชื่อมต่อผ่าน USB ไดรเวอร์จะถูกติดตั้งอัตโนมัติเพื่อเชื่อมอุปกรณ์ภายนอกและระบบ Windows พร้อมกัน ไดรเวอร์จะถูกโหลดลง Memory ก่อนการทำงาน

ดังนั้น เมื่อ Windows Code 38 "The driver could not be loaded because a previous version of the driver is still in memory" ปรากฏ หมายความว่า Instance ก่อนหน้าของไดรเวอร์ยังคงอยู่ใน Memory นั่นคือเหตุที่ Windows โหลด Device Driver สำหรับฮาร์ดแวร์นี้ไม่ได้

วิธีแก้ "Windows cannot load the device driver for this hardware because a previous instance of the device driver is still in memory"

เนื่องจาก "Windows cannot load the device driver" หลังติดตั้งอุปกรณ์ภายนอกผ่าน USB พอร์ต ไดรเวอร์ USB จึงเป็นผู้ถูกนิยมวิจารณ์มากที่สุด ควร Reinstall และ Update มันดูว่าจะแก้ Error Code 38 ใน Device Manager ได้หรือไม่

นอกจากนี้ หากฮาร์ดดิสก์ตั้งให้ปิดในบางเงื่อนไข อาจทำให้ Windows 7, 8, 10 อนุญาตให้อุปกรณ์ภายนอกทำงานโดยไม่ต้องอ่านไดรเวอร์ใน Memory สามารถรัน Windows Built-in Troubleshooter แก้ Hardware Error นี้ได้

วิธีแก้:

  • 1: Uninstall และ Update USB Driver
  • 2: กด Shift ค้างขณะ Shut Down
  • 3: ห้ามปิด Hard Disk
  • 4: รัน Hardware and Device Troubleshooter
  • 5: Clean Boot Windows System

วิธีที่ 1: Uninstall และ Update USB Driver

ตอนนี้ Windows แจ้งว่า "The driver could not be loaded because a previous version of the driver is still in memory" ควรเช็คว่า USB Driver ล้าสมัย/เสียหาย โดย Reinstall ใหม่

ที่นี่ต้อง Uninstall USB Driver ใน Device Manager แล้วติดตั้ง Updated Driver อัตโนมัติเพื่ออัปเดตไดรเวอร์อย่างรวดเร็วและแม่นยำ

ส่วนที่ 1: Uninstall USB Driver ใน Device Manager

  1. เปิด Device Manager
  2. ใน Device Manager > Universal Serial Bus Controllers หรือ Other Devices คลิกขวา USB Driver เลือก Uninstall Device

หลัง Uninstall USB Driver แล้ว ลองติดตั้ง Updated USB Driver อัตโนมัติด้วย Driver Booster เครื่องมือไดรเวอร์อันดับหนึ่ง ช่วยติดตั้ง Device Drivers อัตโนมัติ

แน่นอน หากมีเวลาและคล่องคอมพิวเตอร์ สามารถดาวน์โหลด USB Driver เวอร์ชันใหม่จากเว็บ Manufacturer ทางการ แล้วติดตั้งด้วยตนเอง

ส่วนที่ 2: อัปเดต USB Driver อัตโนมัติ

บางคนใช้ Device Manager อัปเดต USB Driver แต่บางครั้ง Device Manager หา USB Driver ที่ถูกต้องไม่เจอ จึงอัปเดต USB Drivers อัตโนมัติ

Driver Booster เป็น Professional Computer Drivers Finder และ Drivers Downloader ด้วยเครื่องมือมืออาชีพนี้ สามารถหา Missing/Outdated Drivers ทั้งหมดอัตโนมัติ แล้ว Update Drivers ครั้งเดียว

  1. ดาวน์โหลด ติดตั้งและรัน Driver Booster
  2. คลิก Scan

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

  1. หา USB Serial Bus Controllers หา USB Driver Update อัตโนมัติ

เมื่อ USB Driver ติดตั้งใหม่แล้ว ให้เสียบอุปกรณ์ภายนอก เช่น พิมพ์เตอร์ เข้า Windows 7, 8, 10 ผ่าน USB Port ดูว่า Windows โหลด Device Driver ให้ฮาร์ดแวร์คราวนี้ได้หรือไม่

วิธีที่ 2: กด Shift ค้างขณะ Shut Down

วิธีนี้ดูไม่เกี่ยวข้องหรือบ้าคลั่ง แต่ทำงานได้กับหลายผู้ที่เจอ "The driver could not be loaded because a previous version of the driver is still in memory" เพียงแค่คลิก Shut Down และกดค้างปุ่ม "Shift" พร้อมกัน การดำเนินการนี้จะ Refresh คอมพิวเตอร์และให้เริ่ม Windows System จากสถานะใหม่

บางครั้ง Device Driver จะโหลดได้ ทำให้อุปกรณ์ภายนอกทำงานบน Windows 10, 8, 7 หลังจากนั้น หรือบางครั้ง Restart แบบง่ายๆ ก็ช่วยแก้ Code 38 Error ใน Device Manager ได้

วิธีที่ 3: ห้ามปิด Hard Disk (Never Turn off Hard Disk)

เป็นไปได้ว่า Driver ทำงานดีอยู่แล้ว แต่การตั้งค่าฮาร์ดดิสก์มีปัญหา ทำให้เกิดข้อความผิดพลาด "A previous version of the driver is still in memory" ควรปิดตัวเลือก "Turn off Hard Disk" เผื่อมันก่อให้เกิดปัญหา

  1. ค้นหา Power ในกล่องค้นหา กดผลลัพธ์ "Power & Sleep Settings"
  2. ภายใต้ Power & Sleep ด้านขวา หา Additional Power Settings
  3. คลิก Change Plan Settings ถัดจาก Power Plan เช่น Balanced หรือ High Performance
  4. กลางหน้าต่าง เลือก Change Advanced Power Settings
  5. หา Hard Disk > Turn off Hard Disk After เปลี่ยน On Battery และ Plugged In เป็น Never

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

  1. คลิก Apply และ OK บันทึก

เมื่อฮาร์ดดิสก์ทำงานดีบนอุปกรณ์ จะเห็นว่า "The driver could not be loaded because a previous version of the driver is still in memory" หายไปเมื่อพยายามเชื่อมอุปกรณ์ภายนอกผ่าน USB Port

วิธีที่ 4: รัน Hardware and Devices Troubleshooter

Hardware and Device Troubleshooter เองสามารถ Troubleshoot ปัญหาฮาร์ดแวร์ต่างๆ ได้ ในกรณีนี้ เมื่ออุปกรณ์ภายนอกไม่ทำงานบน Windows 10, 8, 7 จาก Device Manager Error Code 38 สามารถเปิด Built-in Troubleshooter นี้ได้

  1. พิมพ์ Troubleshoot ในกล่องค้นหา กด Enter
  2. ภายใต้ Troubleshooter ด้านขวา เลื่อนหา Hardware and Devices คลิก Run the Troubleshooter

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

รอจน Troubleshooter ทำงานเสร็จ หลังจากนั้น ให้มันช่วยแก้ Hardware Issue หรือทำตามคำแนะนำเพื่อแก้ "Windows cannot load the device driver for the hardware" เอง

วิธีที่ 5: Clean Boot Windows System

Clean Boot บน Windows 10, 8, 7 หมายถึง Windows เริ่มต้นด้วยชุด Drivers และ Startup Programs ขั้นต่ำ เพื่อกำหนดว่า Background Program กำลังรบกวนโปรแกรมหรือไม่

หากซอฟต์แวร์ภายนอกทำให้ระบบเสียหายและนำไปสู่ "Windows cannot load the device driver for this hardware because a previous instance of the device driver is still in memory. (Code 38)" และวิธีข้างต้นไม่ช่วย สามารถ Clean Boot ระบบได้ กล่าวง่ายๆ Clean Boot คือ Disable Startup Items ใดๆ ก็ตาม

  1. พิมพ์ msconfig ในกล่องค้นหา คลิกผลลัพธ์ "System Configuration"
  2. ใน System Configuration ภายใต้ General ติ๊กวงกลม Selective Startup แล้วเอาติ๊ก Load Startup Items ออก

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

  1. ภายใต้ Startup คลิก Open Task Manager

Windows โหลด Device Driver ไม่ได้ เพราะ Driver รุ่นก่อนหน้ายังอยู่ใน Memory (Code 38)

แน่นอน สามารถบันทึกการเปลี่ยนแปลงขั้นตอนที่ 2 แล้วเปิด Task Manager ด้วยวิธีอื่นได้

  1. ใน Task Manager Startup คลิกขวา Startup Item เลือก Disable

วิธีนี้จะ Disable Startup Items ทั้งหมด สามารถ Reboot Windows System แล้วเสียบอุปกรณ์ภายนอก เช่น สแกนเนอร์ ผ่าน USB Port ดูว่า Code 38 ยังคงอยู่ใน Device Manager และ Windows ยังไม่ยอมให้อุปกรณ์ภายนอกทำงานหรือไม่