ข้อผิดพลาด Winload.EFI ค่อนข้างอธิบายตนเองได้ชัดเจนจากชื่อซึ่งเป็นข้อผิดพลาดที่ป้องกันไม่ให้ Windows โหลด (หน้าจอสีน้ำเงินแห่งความตายหรือ BSOD) ซึ่งมักเกิดจากเร็กคอร์ดการบู๊ตที่เสียหายหรือการกำหนดค่าการบู๊ตที่ไม่ถูกต้อง ข้อความแสดงข้อผิดพลาดอาจแตกต่างกันไปขึ้นอยู่กับระบบปฏิบัติการของคุณ แต่คำหลัก winload.efi จะเหมือนกัน สำหรับระบบ Windows 8/8.1/10 ข้อผิดพลาดมักจะปรากฏขึ้นในรูปแบบต่อไปนี้:
พีซีของคุณต้องได้รับการซ่อมแซม ไม่สามารถโหลดแอปพลิเคชันหรือระบบปฏิบัติการได้เนื่องจากไฟล์ที่จำเป็นขาดหายไปหรือมีข้อผิดพลาด ไฟล์:\windows\system32\winload.efi รหัสข้อผิดพลาด:0xc000***
หรือ:
พีซีของคุณต้องได้รับการซ่อมแซม ข้อผิดพลาดที่ไม่คาดคิดได้เกิดขึ้น. รหัสข้อผิดพลาด:0xc0000001 คุณจะต้องใช้เครื่องมือการกู้คืนบนสื่อการติดตั้งของคุณ หากคุณไม่มีสื่อการติดตั้ง โปรดติดต่อผู้ดูแลระบบหรือผู้ผลิตพีซีของคุณ
ในคู่มือนี้ เราจะแนะนำขั้นตอนการแก้ปัญหาสองสามขั้นตอนซึ่งจะช่วยคุณแก้ปัญหาได้
วิธีการบูตเข้าสู่ BIOS เพื่อเปลี่ยนลำดับการบู๊ต
คุณต้องรู้วิธีบูตและเปลี่ยนลำดับการบู๊ตเนื่องจากจำเป็นเพื่อดำเนินการแก้ไขด้านล่าง รีสตาร์ท คอมพิวเตอร์ของคุณ. ป้อนการตั้งค่า BIOS ของคอมพิวเตอร์ (หรือ UEFI) ทันทีที่เริ่มทำงาน คีย์ที่คุณต้องกดเพื่อเข้าสู่การตั้งค่าเหล่านี้ขึ้นอยู่กับผู้ผลิตเมนบอร์ดของคอมพิวเตอร์ของคุณ และสามารถเป็นอะไรก็ได้ตั้งแต่ Esc, Delete หรือ F2 ถึง F8, F10 หรือ F12 โดยปกติ F2 ซึ่งจะแสดงบนหน้าจอโพสต์และคู่มือที่ให้มากับระบบของคุณ การค้นหาโดย Google อย่างรวดเร็วโดยถามว่า “วิธีป้อน bios” ตามด้วยหมายเลขรุ่นจะแสดงผลลัพธ์ด้วย
วิธีที่ 1:ปิดใช้งาน Secure Boot
หากคุณมีคอมพิวเตอร์ที่ใช้ UEFI แทนที่จะเป็น BIOS แบบเก่า ปัญหาอาจเกิดจากการตั้งค่าบางอย่างใน UEFI ที่เรียกว่า Secure Boot มันสามารถหยุดระบบของคุณไม่ให้เข้าถึงไฟล์ winload.efi ทำให้เกิดข้อผิดพลาดนี้ขึ้น Windows 8 และเวอร์ชันที่ใหม่กว่าจะเปิดใช้งานคุณลักษณะนี้โดยค่าเริ่มต้น
หากต้องการปิดใช้งาน Secure Boot ให้บูตไปที่ BIOS หรือ UEFI อินเทอร์เฟซผู้ใช้การตั้งค่า UEFI แตกต่างกันไปตามรุ่น โดยทั่วไป ให้มองหา Secure Boot ซึ่งสามารถพบได้ในส่วนที่แยกต่างหากหรือในความปลอดภัย แท็บหรือใน บูต แท็บ หรือใน การตรวจสอบสิทธิ์ แท็บขึ้นอยู่กับรุ่นระบบของคุณ ศึกษาคู่มือรุ่นระบบของคุณเพื่อทราบว่าอยู่ที่ไหน เมื่อคุณพบตัวเลือก Secure Boot ในแท็บ ปิดการใช้งาน มัน หรือปิดเครื่อง
บันทึกการตั้งค่า UEFI และออก ตอนนี้บูตระบบของคุณตามปกติ หากคุณยังคงได้รับข้อผิดพลาดเดิม ให้ไปยังแนวทางแก้ไขปัญหาถัดไป
วิธีที่ 2:บันทึกการบูตการซ่อมแซม
ในการซ่อมแซมบันทึกการบู๊ต เราจะซ่อมแซมไฟล์ที่ Windows ต้องการในการบู๊ต ซึ่งรวมถึงไฟล์ winload.efi
ผู้ใช้ Windows 7
ในการดำเนินการต่อ คุณจะต้องเริ่ม windows ในโหมดซ่อมแซม (ดูขั้นตอนที่นี่)
เมื่อคุณบูตเครื่องเพื่อเริ่มต้นการซ่อมแซมและเห็น “ตัวเลือกการกู้คืนระบบ” ให้เลือกคำสั่ง พรอมต์ เมื่อหน้าต่างสีดำของพรอมต์คำสั่งปรากฏขึ้น ให้พิมพ์ คำสั่งต่อไปนี้แล้วกด Enter หลังแต่ละบรรทัด
bootrec /fixboot bootrec /scanos bootrec /fixmbr bootrec /rebuildbcd
หลังจากดำเนินการคำสั่งสำเร็จแล้ว ให้รีสตาร์ทระบบและตรวจสอบว่ายังมีปัญหาอยู่หรือไม่
หากปัญหายังคงอยู่ ให้ทำซ้ำขั้นตอนข้างต้นและดำเนินการตามคำสั่งด้านบน อย่างละ 3 ครั้ง ตรวจสอบว่าปัญหายังคงมีอยู่หรือไม่ ถ้าใช่ ให้ไปยังแนวทางแก้ไขปัญหาถัดไป
Windows 8/8.1/10
หากต้องการเริ่ม W8/8.01 และ 10 ในโหมดซ่อมแซม โปรดดูขั้นตอนที่นี่
ในตัวเลือกขั้นสูง คลิกคำสั่ง แจ้ง .
เมื่อหน้าต่างสีดำของพรอมต์คำสั่งปรากฏขึ้น ให้พิมพ์คำสั่งต่อไปนี้แล้วกด Enter หลังแต่ละบรรทัด
bootrec /fixboot bootrec /scanos bootrec /fixmbr bootrec /rebuildbcd
หลังจากที่ดำเนินการคำสั่งสำเร็จแล้ว เริ่มต้นใหม่ ระบบของคุณและตรวจสอบว่าปัญหายังคงมีอยู่หรือไม่
หากปัญหายังคงอยู่ ให้ทำซ้ำขั้นตอนข้างต้นและดำเนินการคำสั่งด้านบน 3 ครั้งในแต่ละคำสั่ง . ตรวจสอบว่าปัญหายังคงมีอยู่หรือไม่ ถ้าใช่ ให้ไปยังแนวทางแก้ไขปัญหาถัดไป
วิธีที่ 3:ทำการซ่อมแซมการเริ่มต้น
คุณอาจได้รับรหัสข้อผิดพลาด 0XC0000001 หากรายการเริ่มต้นระบบของคุณเสียหาย ในบริบทนี้ การดำเนินการซ่อมแซมการเริ่มต้นระบบอาจช่วยแก้ปัญหาได้ แต่ก่อนหน้านั้น ตรวจสอบให้แน่ใจว่าลำดับการบู๊ตของระบบในการตั้งค่า BIOS ได้รับการกำหนดค่าอย่างเหมาะสม (ไดรฟ์ Windows จะอยู่อันดับแรกในลำดับการบู๊ต)
- ปิดเครื่อง ระบบของคุณ (หากเปิดอยู่) จากนั้น เปิดเครื่อง มันกลับมา เปิด .
- เมื่อโลโก้ Windows ปรากฏขึ้น (มีจุดหมุน) ให้กดปุ่มเปิด/ปิดค้างไว้ เพื่อบังคับปิดระบบ
- ทำซ้ำ สามครั้ง และที่ 3 rd เวลา ระบบของคุณอาจบูตเข้าสู่ สภาพแวดล้อมการกู้คืน หากมี ให้เลือก แก้ปัญหา .
- เปิดแล้ว ตัวเลือกขั้นสูง และเลือก การซ่อมแซมการเริ่มต้น .
- เมื่อ Startup Repair เสร็จสิ้นหลักสูตร ให้ตรวจสอบว่าระบบไม่มีรหัสข้อผิดพลาด 0XC0000001 หรือไม่
- หากปัญหายังคงอยู่ ให้สร้าง USB ที่สามารถบู๊ตได้ของ Windows 10 และบูต ระบบผ่าน USB อุปกรณ์ (หากคุณไม่สามารถบู๊ตโดยใช้ USB ได้ ให้ลองใช้พอร์ต USB อื่นบนระบบและตรวจดูให้แน่ใจว่าได้ปิดการใช้งาน Secure Boot ใน BIOS ของระบบ)
- ตอนนี้ เลือก ซ่อมแซมคอมพิวเตอร์ของคุณ และเปิด แก้ปัญหา .
- จากนั้นเลือก ตัวเลือกขั้นสูง และเปิด การซ่อมแซมการเริ่มต้น .
- ตอนนี้ ติดตาม ข้อความแจ้งบนหน้าจอและเมื่อ Startup Repair เสร็จสิ้นหลักสูตร รีบูต พีซีของคุณเพื่อตรวจสอบว่าปัญหา 0XC0000001 ได้รับการแก้ไขหรือไม่
วิธีที่ 4:ถอนการติดตั้งการอัปเดต Buggy
Microsoft มีประวัติอันยาวนานในการเผยแพร่การอัปเดตแบบบั๊กกี้ และปัญหาในมือก็อาจเป็นผลมาจากเช่นเดียวกัน ในกรณีนี้ การลบการอัปเดตข้อบกพร่อง (การอัปเดตคุณภาพหรือคุณลักษณะ) อาจช่วยแก้ปัญหาได้
- บูตระบบของคุณใน สภาพแวดล้อมการกู้คืน ตามที่กล่าวไว้ในโซลูชันที่ 1 และเปิด แก้ไขปัญหา .
- ตอนนี้เลือก ตัวเลือกขั้นสูง และเปิด ถอนการติดตั้งการอัปเดต .
- จากนั้นเลือก ถอนการติดตั้งการอัปเดตคุณภาพล่าสุด หรือ ถอนการติดตั้งการอัปเดตคุณลักษณะล่าสุด .
- ตอนนี้ให้การถอนการติดตั้งเสร็จสิ้น จากนั้น รีบูต พีซีของคุณเพื่อตรวจสอบว่าระบบไม่มีข้อผิดพลาด BSOD หรือไม่
วิธีที่ 5:ทำการสแกน CHKDSK
ข้อผิดพลาด BSOD ปัจจุบันอาจเป็นผลมาจากเซกเตอร์เสียเชิงตรรกะของไดรฟ์จัดเก็บ ในบริบทนี้ การสแกน ChKDsk อาจช่วยแก้ปัญหาได้
- บูตระบบของคุณใน สภาพแวดล้อมการกู้คืน หรือ (ควร) ใช้ ซ่อมแซมคอมพิวเตอร์ของคุณ โดยการบูทระบบของคุณผ่าน USB ที่สามารถบู๊ตได้ของ Windows 10 (ตามที่กล่าวไว้ในโซลูชันที่ 1) และเปิด แก้ไขปัญหา .
- ตอนนี้เลือก ตัวเลือกขั้นสูง และเปิด พรอมต์คำสั่ง .
- จากนั้น ดำเนินการ ต่อไปนี้เพื่อค้นหาอักษรระบุไดรฟ์ของไดรฟ์ระบบ (อักษรระบุไดรฟ์อาจไม่เหมือนกับที่แสดงใน Windows):
Diskpart
- ตอนนี้ ลงรายการ พาร์ติชั่นโดยดำเนินการดังต่อไปนี้:
list vol
- ตอนนี้ ให้ตรวจสอบ อักษรระบุไดรฟ์ (เช่น ไดรฟ์ E) ของ ไดรฟ์ OS (ส่วนใหญ่น่าจะมี บูต ใน ข้อมูล หรือใช้ Dir ใน Command Prompt เพื่อตรวจสอบเนื้อหาของพาร์ติชัน) จากนั้น ปิด Diskpart โดยดำเนินการดังต่อไปนี้:
Exit
- จากนั้นไปที่ไดรฟ์ของระบบ (ใน Command Prompt) โดยป้อน อักษรระบุไดรฟ์ ตามด้วย เครื่องหมายทวิภาค (เช่น หากไดรฟ์ระบบเป็น C ให้ป้อน C:แล้วกด Enter)
- ตอนนี้ให้เรียกใช้ ChkDsk สแกนโดยดำเนินการดังต่อไปนี้ (โดยที่ C คือไดรฟ์ระบบ):
chkdsk C: /r
- จากนั้น รอ จนกว่าการสแกน ChkDsk จะเสร็จสิ้น และเมื่อเสร็จสิ้น ให้บูตเข้าสู่ Windows และตรวจสอบว่ารหัสข้อผิดพลาด BSOD 0XC0000001 ได้รับการแก้ไขแล้วหรือไม่
หากกระบวนการข้างต้นนั้นซับซ้อนเกินไปสำหรับคุณ ให้แนบระบบที่มีปัญหากับพีซีเครื่องอื่นและทำการสแกน ChkDsk ที่นั่นเพื่อตรวจสอบว่าปัญหา BSOD ได้รับการแก้ไขแล้วหรือไม่
วิธีที่ 6:การใช้ยูทิลิตี้ BCDBoot
ใช้วิธีการข้างต้นเพื่อเข้าถึง Command prompt จาก start-up repair เมื่ออยู่ใน command prompt ให้ทำตามขั้นตอนด้านล่าง
- พิมพ์ diskpart แล้วกด Enter .
- พิมพ์ รายการ ระดับเสียง แล้วกด Enter .
- ใต้แถวป้ายกำกับ ให้ค้นหาป้ายกำกับ System Reserved และสังเกต Volume . ที่เกี่ยวข้อง หมายเลข .
- ตอนนี้พิมพ์ เลือก Volume=N แล้วกด Enter โดยที่ N คือ ระดับเสียง หมายเลข คุณ ตั้งข้อสังเกต ก่อนหน้านี้
- ตอนนี้พิมพ์ assign letter=w แล้วกด Enter .
- พิมพ์ ออก แล้วกด Enter .
- พิมพ์ bcdboot c:\Windows /s w:/f uefi แล้วกด Enter .
ตอนนี้ เริ่มต้นใหม่ ระบบของคุณและตรวจสอบ หากปัญหายังไม่ได้รับการแก้ไข ให้ไปที่วิธีที่ 4
วิธีที่ 7:การปิดใช้งานการป้องกันมัลแวร์
- เปิดระบบของคุณ จากนั้นอย่างแรง ปิด มัน ลง เมื่อคุณเห็นโลโก้ Windows ทำซ้ำสองสามครั้งจนกว่าคุณจะได้รับ การกู้คืน หน้าจอ .
- คลิก ดูตัวเลือกการซ่อมแซมขั้นสูง .
- จากนั้นคลิกที่ แก้ไขปัญหา> ขั้นสูง ตัวเลือก .
- คลิก เริ่มต้น การตั้งค่า ในตัวเลือกขั้นสูง
- ในหน้าจอการตั้งค่าเริ่มต้น ให้คลิกที่ รีสตาร์ท .
- การเริ่มต้น การตั้งค่า เมนู จะปรากฏขึ้นหลังจากการรีสตาร์ท
- ตอนนี้ กด 8 บนแป้นพิมพ์ของคุณ หน้าต่างของคุณจะเปิดขึ้นโดยปิดใช้การป้องกันมัลแวร์ เฉพาะช่วงนี้เท่านั้น
โซลูชันที่ 8:ทำการคืนค่าระบบ
รหัสข้อผิดพลาด 0XC0000001 อาจเป็นผลมาจากการเปลี่ยนแปลงล่าสุด (ที่ไม่ต้องการ) ในระบบและการกู้คืนระบบ (ไปยังจุดก่อนหน้าในช่วงเวลาที่ระบบทำงานได้ดี) อาจแก้ปัญหาได้
- บูตระบบของคุณใน สภาพแวดล้อมการกู้คืน (ตามที่กล่าวไว้ในโซลูชันที่ 1) และเปิด แก้ไขปัญหา .
- เปิดแล้ว ตัวเลือกขั้นสูง แล้วเลือก การคืนค่าระบบ .
- แล้วติดตาม ข้อความแจ้งให้กู้คืนระบบไปยังจุดก่อนหน้าและเมื่อกระบวนการเสร็จสมบูรณ์ รีบูต พีซีของคุณเพื่อตรวจสอบว่าระบบไม่มีข้อผิดพลาด 0XC0000001 หรือไม่
คุณสามารถใช้สิ่งต่อไปนี้ในพรอมต์คำสั่ง เพื่อดำเนินการคืนค่าระบบ (โดยที่ C คือไดรฟ์ระบบ คุณสามารถค้นหาไดรฟ์ระบบได้โดยทำตามขั้นตอนที่กล่าวถึงในโซลูชัน ChkDsk):
rstrui.exe /OFFLINE:C:\Windows
วิธีที่ 9:เปลี่ยนชื่อไฟล์ Registry ที่เสียหายและคัดลอกไฟล์ Backup Registry
คุณอาจพบข้อผิดพลาด 0XC0000001 หากไฟล์สำคัญบางไฟล์ (โดยเฉพาะที่เกี่ยวข้องกับรีจิสทรีของระบบ) เสียหาย ในสถานการณ์สมมตินี้ การเปลี่ยนชื่อไฟล์ที่เสียหายและการวางไฟล์ OS ดั้งเดิม (จากโฟลเดอร์สำรองของรีจิสทรี) อาจแก้ปัญหาได้
- เปิด พรอมต์คำสั่ง ใน สภาพแวดล้อมการกู้คืน (ตามที่กล่าวไว้ในโซลูชัน 3) และ ดำเนินการ ต่อไปนี้ (โดยที่ C คือไดรฟ์ระบบ) ทีละรายการ (อย่าลืมกดปุ่ม Enter หลังจากนั้น):
Ren C:\windows\system32\config\SAM SAM.BAK Ren C:\windows\system32\config\SYSTEM SYSTEM.BAK Ren C:\windows\system32\config\SECURITY SECURITY.BAK Ren C:\windows\system32\config\DEFAULT DEFAULT.BAK Ren C:\windows\system32\config\SOFTWARE SOFTWARE.BAK Copy C:\Windows\System32\config\RegBack\SAM C:\windows\system32\config Copy C:\Windows\System32\config\RegBack\SYSTEM C:\windows\system32\config Copy C:\Windows\System32\config\RegBack\SECURITY C:\windows\system32\config Copy C:\Windows\System32\config\RegBack\DEFAULT C:\windows\system32\config Copy C:\Windows\System32\config\RegBack\SOFTWARE C:\windows\system32\config
- เมื่อดำเนินการตามคำสั่งข้างต้นแล้ว รีบูต พีซีของคุณเข้าสู่ Windows และตรวจสอบว่าปัญหา BSOD ได้รับการแก้ไขหรือไม่
วิธีที่ 10:ดำเนินการระบบในพรอมต์คำสั่ง
มี cmdlet ที่แตกต่างกัน (เช่น Bootrec, SFC, DISM เป็นต้น) ใน Command Prompt ที่สามารถใช้แก้ปัญหา BSOD ปัจจุบันได้
ดำเนินการสแกน SFC และ DISM
- ดำเนินการ ต่อไปนี้ใน Command Prompt ของ Recovery Environment (โดยที่ D คือไดรฟ์ระบบ):
sfc /scannow /offbootdir=d:\ /offwindir=d:\windows
- เมื่อการสแกนเสร็จสิ้น ให้พิมพ์ ออก ในพรอมต์คำสั่งและ บูต ระบบของคุณเข้าสู่ Windows เพื่อตรวจสอบว่าระบบไม่มีปัญหา BSOD หรือไม่
- หากปัญหายังคงอยู่ ให้ตรวจสอบว่าทำการสแกน DISM เพื่อซ่อมแซม Windows (โดยเฉพาะอย่างยิ่งหลังจากต่อฮาร์ดดิสก์ของระบบกับพีซีเครื่องอื่น) แล้วแก้ปัญหาได้หรือไม่
ปิดใช้งานการไฮเบอร์เนต
หากปัญหาเริ่มเกิดขึ้นหลังจากการไฮเบอร์เนตระบบ การปิดใช้งานการไฮเบอร์เนตอาจช่วยแก้ปัญหาได้
- เปิด พรอมต์คำสั่ง ใน สภาพแวดล้อมการกู้คืน และนำทางไปยังพาร์ติชันระบบ (ตามที่อธิบายในโซลูชันที่ 3)
- ตอนนี้ ดำเนินการ cmdlet ต่อไปนี้เพื่อปิดใช้งานการไฮเบอร์เนต:
powercfg -h off
- จากนั้นรีบูต พีซีของคุณและตรวจสอบว่าระบบไม่มีปัญหา BSOD หรือไม่
เปลี่ยนชื่อโฟลเดอร์ EFI
- เปิด พรอมต์คำสั่ง ใน สภาพแวดล้อมการกู้คืน และ นำทาง ไปยังไดรฟ์ระบบ
- ตอนนี้ ดำเนินการ ดังต่อไปนี้:
ผบ - จากนั้นตรวจสอบว่า ไดเรกทอรี EFI จะปรากฏขึ้น ถ้าเป็นเช่นนั้น เปลี่ยนชื่อ โดยดำเนินการดังต่อไปนี้:
ren EFI oldEFI
- ตอนนี้ รีบูต พีซีของคุณและตรวจสอบว่าระบบไม่มีปัญหา 0XC0000001 หรือไม่
- หากปัญหายังคงอยู่ ให้ตรวจสอบว่า กำลังลบโฟลเดอร์ EFI โดยดำเนินการต่อไปนี้ใน Command Prompt ใน Recovery Environment (ตรวจสอบให้แน่ใจว่าคุณกำลังดำเนินการคำสั่งในไดรฟ์ระบบ):
rd /s C:\oldEFI
หากปัญหายังคงอยู่ คุณอาจต้องดำเนินการการติดตั้งใหม่ทั้งหมด ของ Windows บนพาร์ติชั่น/ดิสก์อื่น หรือหลังจากแบ่งพาร์ติชั่นไดรฟ์ที่มีปัญหาใหม่ทั้งหมด หากคุณไม่สามารถสำรองข้อมูลไดรฟ์ของระบบด้วยวิธีอื่นใด จะเป็นการดีกว่าถ้าใช้ การติดตั้งแบบกำหนดเอง (ข้อมูลไดรฟ์ระบบจะอยู่ในโฟลเดอร์ Windows.old) เมื่อทำการติดตั้ง Windows ใหม่ทั้งหมด