หาก Windows แจ้งว่า DLL หายไป อย่าดาวน์โหลดไฟล์แยกต่างหากจากเว็บไซต์ที่ไม่ทราบแหล่งที่มา ก่อนอื่นให้จดชื่อไฟล์ที่แน่นอน เพราะชื่อนั้นมักบอกได้ว่าควรกู้คืนสิ่งใด เช่น โปรแกรมเอง แพ็กเกจ Microsoft Visual C++ ส่วนประกอบ DirectX หรือไฟล์ระบบ Windows คู่มือนี้มีห้าวิธี: เริ่มจากประเภท DLL และวิธีแก้ไขที่ตรงจุดที่สุด แล้วจึงตรวจสอบ Windows หากระบุชื่อไฟล์หรือการพึ่งพาได้ยาก Fionn DLL Fixer สามารถสแกน DLL และส่วนประกอบ Windows ที่เกี่ยวข้องได้

วิธีระบุสาเหตุจากชื่อ DLL ที่หายไป

ข้อความข้อผิดพลาดฉบับเต็มสำคัญกว่าคำว่า “DLL” เพียงอย่างเดียว ให้คัดลอกชื่อไฟล์แล้วเทียบกับตารางนี้ เพื่อลดขั้นตอนที่ไม่จำเป็นและช่วยแก้ปัญหาการเปิดโปรแกรมได้ตรงจุด

สิ่งที่เห็นในข้อผิดพลาด สิ่งที่ควรตรวจสอบก่อน ตัวอย่าง
vcruntime , msvcp , msvcr Microsoft Visual C++ Redistributable ที่ตรงกัน vcruntime140.dll , msvcp140.dll
d3dx9 , d3dcompiler , xinput ส่วนประกอบ DirectX ที่เกมหรือแอปพลิเคชันต้องใช้ d3dx9_43.dll , xinput1_3.dll
DLL ระบบของ Windows DISM และ SFC shell32.dll , user32.dll
DLL ในโฟลเดอร์ของโปรแกรมเฉพาะ ซ่อมแซมหรือติดตั้งโปรแกรมใหม่ ไฟล์ที่อยู่ข้างไฟล์ปฏิบัติการของแอปพลิเคชัน
ไม่ทราบประเภท บันทึกชื่อเต็มและทำการวินิจฉัย ข้อความที่ไม่มีพาธไปยังไฟล์

เปรียบเทียบวิธีแก้ไขแบบย่อเมื่อ DLL หายไปใน Windows

วิธี เหมาะที่สุดสำหรับ ประสิทธิภาพ ความพยายามของผู้ใช้
ซ่อมแซมโปรแกรม ข้อผิดพลาดเกิดกับแอปพลิเคชันเดียว สูงสำหรับไฟล์ของแอปพลิเคชัน ต่ำ
Visual C++ หรือ DirectX ข้อผิดพลาดของไลบรารีรันไทม์หรือเกม สูงเมื่อประเภท DLL ตรงกัน ปานกลาง
DISM และ SFC DLL ระบบหรือปัญหาในหลายโปรแกรม สูงสำหรับไฟล์ Windows ที่ได้รับการป้องกัน ปานกลาง
อัปเดต Windows ระบบที่ไม่ได้อัปเดตมานาน ขึ้นอยู่กับการอัปเดตที่มี ต่ำ
Fionn DLL Fixer — ตัวเลือกที่แนะนำ ไม่ทราบสาเหตุหรือมีการพึ่งพาหลายรายการ วินิจฉัยและแก้ไขแบบอัตโนมัติ ต่ำ

วิธีที่ 1: ซ่อมแซมโปรแกรมที่มีปัญหา

ควรใช้เมื่อใด

เลือกวิธีนี้หากข้อผิดพลาดปรากฏเฉพาะเมื่อเปิดโปรแกรมหรือเกมเดียว หรือ DLL ที่หายไปอยู่ในโฟลเดอร์ของโปรแกรมนั้น ไฟล์จำนวนมากในกรณีนี้มาพร้อมกับแอปพลิเคชันและไม่ใช่ส่วนหนึ่งของ Windows

  1. ปิดโปรแกรมที่มีปัญหา
  2. เปิด “การตั้งค่า” ของ Windows แล้วไปที่แอปพลิเคชันที่ติดตั้งไว้
  3. ค้นหาโปรแกรมและเลือก “ซ่อมแซม” หากมีคำสั่งนี้
    หน้าการตั้งค่า Windows สำหรับซ่อมแซมแอปพลิเคชันที่ติดตั้ง
  4. หากไม่มีตัวเลือกซ่อมแซมหรือซ่อมแล้วไม่สำเร็จ ให้ถอนการติดตั้งโปรแกรมด้วยวิธีมาตรฐาน
  5. ติดตั้งใหม่จากแหล่งข้อมูลอย่างเป็นทางการของผู้พัฒนา
  6. เปิดโปรแกรม

ตรวจสอบผลลัพธ์: แอปพลิเคชันเปิดได้โดยไม่มีข้อความเดิม ให้ลองเปิดอีกครั้งหลังรีสตาร์ต Windows

วิธีที่ 2: ซ่อมแซม Visual C++ หรือ DirectX

ควรใช้เมื่อใด

ใช้แนวทางนี้กับ vcruntime*.dll , msvcp*.dll และ msvcr*.dll รวมถึง d3dx9_*.dll , d3dcompiler_*.dll และ xinput*.dll Microsoft ระบุว่าการไม่มีไลบรารีรันไทม์ Visual C++ ควรแก้ด้วยการติดตั้ง Redistributable ที่ตรงกัน ไม่ใช่ DLL แยกต่างหาก สำหรับ Visual C++ ต้องคำนึงถึงสถาปัตยกรรมด้วย: แพ็กเกจ x86 สำหรับแอปพลิเคชัน 32 บิต, x64 สำหรับ 64 บิต และ ARM64 สำหรับ ARM64

การติดตั้ง Visual C++ Redistributable
  1. เทียบชื่อ DLL ที่หายไปกับ Visual C++ หรือ DirectX จากตารางด้านบน
  2. สำหรับ Visual C++ ให้เปิด หน้าของ Microsoft เกี่ยวกับ Redistributable ที่รองรับ
  3. ติดตั้งหรือซ่อมแซมแพ็กเกจให้ตรงกับสถาปัตยกรรมของแอปพลิเคชันและระบบ
  4. สำหรับ DLL ของ DirectX ให้เรียกใช้ตัวติดตั้งหรือการซ่อมแซมส่วนประกอบที่มีมากับตัวติดตั้งอย่างเป็นทางการของเกมหรือแอปพลิเคชัน
  5. รีสตาร์ต Windows หากตัวติดตั้งร้องขอ
  6. ลองเปิดโปรแกรมอีกครั้ง

ตรวจสอบผลลัพธ์: ข้อความที่ระบุถึงไลบรารีรันไทม์หรือส่วนประกอบ DirectX หายไป และแอปพลิเคชันเปิดได้

วิธีที่ 3: กู้คืนไฟล์ระบบด้วย DISM และ SFC

ควรใช้เมื่อใด

วิธีนี้เหมาะสำหรับ DLL ระบบของ Windows ข้อผิดพลาดในหลายโปรแกรม และปัญหาหลังระบบเสียหาย Microsoft แนะนำให้กู้คืนอิมเมจ Windows ด้วย DISM ก่อน จากนั้นจึงตรวจสอบไฟล์ระบบที่ได้รับการป้องกันด้วย SFC

  1. เปิด “พร้อมท์คำสั่ง” หรือ “เทอร์มินัล” ในฐานะผู้ดูแลระบบ
  2. เรียกใช้คำสั่ง:
    DISM.exe /Online /Cleanup-image /Restorehealth
        
คำสั่ง DISM เพื่อกู้คืนอิมเมจ Windows
  • รอจนกว่าจะแสดงข้อความว่า DISM เสร็จสมบูรณ์
  • เรียกใช้คำสั่ง:
  • sfc /scannow
      
    คำสั่ง SFC สำหรับตรวจสอบไฟล์ระบบ
    1. รอข้อความสรุปผลจาก SFC
    2. รีสตาร์ตคอมพิวเตอร์
    3. ตรวจสอบแอปพลิเคชันเดิม

    ตรวจสอบผลลัพธ์: SFC รายงานว่าไม่พบการละเมิดความสมบูรณ์หรือได้แก้ไขแล้ว และข้อผิดพลาด DLL ไม่เกิดขึ้นอีก

    วิธีที่ 4: อัปเดต Windows

    ควรใช้เมื่อใด

    ตรวจสอบการอัปเดตก่อนหรือหลังการกู้คืนระบบ โดยเฉพาะใน Windows ที่เพิ่งติดตั้งหรือไม่ได้อัปเดตมานาน นี่เป็นขั้นตอนเสริม ไม่ได้ทดแทนการติดตั้งโปรแกรมใหม่หรือแพ็กเกจ Visual C++ ที่จำเป็น

    1. เปิด “การตั้งค่า” ของ Windows
    2. ไปที่ “Windows Update”
    3. คลิก “ตรวจหาการอัปเดต”
      การติดตั้งการอัปเดตเพิ่มเติมของ Windows 11
    4. ติดตั้งการอัปเดตที่เสนอ
    5. รีสตาร์ตคอมพิวเตอร์
    6. ลองเปิดแอปพลิเคชันอีกครั้ง

    ตรวจสอบผลลัพธ์: หลังติดตั้งการอัปเดตและรีสตาร์ต ข้อความจะไม่ปรากฏอีก

    วิธีที่ 5: วินิจฉัยและแก้ไข DLL ที่หายไปด้วย Fionn DLL Fixer

    ควรใช้เมื่อใด

    นี่คือตัวเลือกที่แนะนำเมื่อชื่อ DLL ไม่บ่งชี้สาเหตุ ข้อผิดพลาดกระทบการพึ่งพาหลายรายการ หรือการตรวจสอบ DirectX, Visual C++, .NET, OpenAL และ XInput ด้วยตนเองใช้เวลานาน Fionn DLL Fixer สำหรับ Windows ตรวจสอบ DLL ที่หายไป เสียหาย ไม่เข้ากัน และ DLL ที่เกี่ยวข้องกับพาธ System32 รวมทั้งรองรับการสแกน การแก้ไข และการตรวจสอบซ้ำ

    1. เปิด Fionn DLL Fixer โปรแกรมจะสแกนคอมพิวเตอร์โดยอัตโนมัติเพื่อหาปัญหา DLL และระบบ และแสดงผลที่พบเมื่อการสแกนเสร็จสิ้น เปิด Fionn DLL Fixer
    2. เมื่อการสแกนเสร็จสิ้น ให้คลิก “Repair” เพื่อเริ่มแก้ไขปัญหา DLL และระบบที่ตรวจพบทั้งหมดโดยอัตโนมัติ หลังสแกนเสร็จ ให้คลิก “Repair” เพื่อเริ่มแก้ไขปัญหา DLL และระบบที่ตรวจพบทั้งหมดโดยอัตโนมัติ
    3. รอให้การแก้ไขเสร็จสิ้น ระหว่างดำเนินการ ปุ่มจะเปลี่ยนเป็น “Fixing” จนกว่าปัญหาทั้งหมดจะได้รับการแก้ไข รอขณะการแก้ไขกำลังดำเนินอยู่
    4. เมื่อการแก้ไขเสร็จสิ้น ให้คลิก “Ok” ในกล่องโต้ตอบยืนยัน หากมีข้อความแจ้ง ให้รีสตาร์ตคอมพิวเตอร์ก่อนตรวจสอบผลลัพธ์ เมื่อการแก้ไขเสร็จสิ้น ให้คลิก “Ok” ในกล่องโต้ตอบยืนยัน
    5. หากปัญหายังคงอยู่หลังรีสตาร์ต ให้คลิก “Recheck” เพื่อสแกนอีกครั้ง หากพบปัญหาใหม่ ให้คลิก “Repair” อีกครั้งเพื่อแก้ไข หากปัญหายังคงอยู่หลังรีสตาร์ต ให้คลิก “Recheck” เพื่อสแกนอีกครั้ง

    ตรวจสอบผลลัพธ์: หลังแก้ไขและตรวจสอบซ้ำหากจำเป็น ให้เปิดโปรแกรมที่แสดงข้อผิดพลาดเดิม

    สิ่งที่ไม่ควรทำ

    • อย่าคัดลอก DLL ไปยัง System32 หรือโฟลเดอร์โปรแกรมโดยไม่มีแหล่งที่มายืนยันและเหตุผลที่ชัดเจน
    • อย่าเลือกแพ็กเกจ Visual C++ โดยดูเฉพาะสถาปัตยกรรมของ Windows: ให้พิจารณาสถาปัตยกรรมของแอปพลิเคชันด้วย
    • อย่าหยุด DISM หรือ SFC ก่อนดำเนินการเสร็จ
    • หลังจากใช้แต่ละวิธี ให้ตรวจสอบโปรแกรมเดิมเพื่อทราบว่าการดำเนินการใดช่วยแก้ปัญหา

    บทสรุป

    เมื่อ DLL หายไป ให้ใช้ชื่อไฟล์เป็นเบาะแสก่อน: ซ่อมแซมแอปพลิเคชันที่มีปัญหาเพียงตัวเดียว ติดตั้ง Visual C++ Redistributable หรือส่วนประกอบ DirectX ที่จำเป็น และใช้ DISM กับ SFC สำหรับ DLL ของระบบ จากนั้นติดตั้งการอัปเดต Windows หากไม่ทราบสาเหตุหรือต้องตรวจสอบการพึ่งพาหลายรายการ Fionn DLL Fixer ช่วยให้การสแกน การแก้ไข และการตรวจสอบซ้ำง่ายขึ้น ผลลัพธ์จะถือว่ายืนยันแล้วก็ต่อเมื่อโปรแกรมเดิมเปิดได้หลังรีสตาร์ตโดยไม่มีข้อความเดิม

    คำถามที่พบบ่อย

    เหตุใดจึงไม่ควรดาวน์โหลด DLL ที่หายไปมาโดยตรง?

    ไฟล์แยกต่างหากอาจมีเวอร์ชัน สถาปัตยกรรม หรือแหล่งที่มาไม่เหมาะสม การกู้คืนโปรแกรม แพ็กเกจรันไทม์อย่างเป็นทางการ หรือไฟล์ระบบ Windows มีความน่าเชื่อถือกว่า

    จะทราบได้อย่างไรว่าต้องใช้ Visual C++ Redistributable?

    ตรวจสอบชื่อ DLL ไฟล์ที่ขึ้นต้นด้วย vcruntime , msvcp หรือ msvcr มักบ่งชี้ว่ามีการพึ่งพา Visual C++

    เหตุใด Windows แบบ 64 บิตจึงอาจต้องใช้แพ็กเกจ x86?

    เนื่องจากแอปพลิเคชันแบบ 32 บิตใช้ไลบรารีแบบ 32 บิต แม้ Windows เองจะเป็นแบบ 64 บิต

    ควรเรียกใช้ DISM และ SFC เมื่อใด?

    ให้เรียกใช้เมื่อเกิดข้อผิดพลาด DLL ของระบบ ปัญหาในหลายโปรแกรม หรือหลัง Windows เสียหาย ให้เรียกใช้ DISM ก่อน SFC

    ควรทำอย่างไรหากข้อผิดพลาดยังคงอยู่?

    บันทึกข้อความข้อผิดพลาดฉบับเต็ม ชื่อ DLL พาธของไฟล์ และชื่อโปรแกรม จากนั้นติดต่อฝ่ายสนับสนุนอย่างเป็นทางการของผู้พัฒนาโปรแกรม หรือวินิจฉัยการพึ่งพาอีกครั้ง

    ต้องการตรวจสอบการพึ่งพาหลายรายการหรือไม่? เปิด Fionn DLL Fixer หลังจากใช้วิธีด้วยตนเอง เพื่อตรวจสอบปัญหา DLL และส่วนประกอบระบบที่ตรวจพบก่อนเปิดแอปพลิเคชันครั้งถัดไป