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

แก้ไขข้อผิดพลาด Event Error 1020 และ 1008 (Microsoft-Windows-Perflib) บน Windows 10/11: 5 วิธีแก้ที่พิสูจน์แล้ว

Windows 10/11 มาพร้อมกับคุณสมบัติมากมายที่ปรับปรุงประสบการณ์การใช้งาน Windows ระบบประกอบด้วยระบบย่อยๆ ที่ทำงานร่วมกันเพื่อให้คุณได้แพลตฟอร์มที่ใช้งานง่ายสำหรับทุกความต้องการของคอมพิวเตอร์

อย่างไรก็ตาม ผู้ใช้หลายรายรายงานว่าพบข้อผิดพลาด Event Error 1020 และ 1008 Microsoft-Windows-Perflib บน Windows 10/11 ซึ่งป้องกันไม่ให้รันแอปพลิเคชันที่ได้รับผลกระทบและส่งผลต่อประสิทธิภาพของคอมพิวเตอร์

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

สิ่งสำคัญคือ ไม่มีแหล่งข้อมูลออนไลน์มากนักที่อธิบายวิธีแก้ไข Event Error 1020 และ 1008 Microsoft-Windows-Perflib บน Windows 10/11 ข้อผิดพลาดนี้ทำให้ผู้ใช้ Windows หลายคนรู้สึกหงุดหงิดและสับสน ไม่รู้จะจัดการอย่างไร

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

สแกนฟรีสำหรับปัญหา PC ดาวน์โหลด 3.145.873 ครั้ง รองรับ: Windows 10/11, Windows 7, Windows 8

ดังนั้น หากคุณพบข้อผิดพลาดนี้อย่างกะทันหันและไม่รู้จะทำอย่างไร คู่มือนี้ควรจะช่วยได้มาก

Event Error 1020 และ 1008 Microsoft-Windows-Perflib คืออะไร

อย่าสับสน นี่คือข้อผิดพลาดสองแบบที่แตกต่างกัน: Event Error 1020 และ Event Error 1008 แต่มักเกิดขึ้นพร้อมกัน และสถานการณ์รอบข้างของข้อผิดพลาดเหล่านี้เกือบจะเหมือนกัน

นี่คือข้อความข้อผิดพลาดที่อาจพบสำหรับ Event Error 1008:

แหล่งที่มา: Perflib
หมวดหมู่: ไม่มี
ประเภท: ข้อผิดพลาด
Event ID: 1008

กระบวนการเปิดสำหรับบริการ ".NETFramework" ใน DLL "C: WINDOWS system32 mscoree.dll" ล้มเหลวพร้อมรหัสข้อผิดพลาด ระบบไม่พบไฟล์ที่ระบุ ข้อมูลประสิทธิภาพสำหรับบริการนี้ไม่พร้อมใช้งาน

นี่คือข้อความข้อผิดพลาดที่อาจพบสำหรับ Event Error 1020:

แหล่งที่มา: Perflib
หมวดหมู่: ไม่มี
ประเภท: ข้อผิดพลาด
Event ID: 1008

ขนาดบัฟเฟอร์ที่จำเป็นมีขนาดใหญ่กว่าขนาดบัฟเฟอร์ที่ส่งผ่านไปยังฟังก์ชันเก็บรวบรวมของ DLL เคาน์เตอร์ที่ขยายได้ "C: Windows System32 perfts.dll" สำหรับบริการ "LSM" ขนาดบัฟเฟอร์ที่รายงานคือ 34184 และขนาดที่จำเป็นคือ 43160

ข้อผิดพลาดเหล่านี้อาจเกิดขึ้นกับไฟล์อื่นๆ ไม่ได้แค่ mscoree.dll เท่านั้น ยังอาจเกิดขึ้นเมื่อพบข้อผิดพลาดขณะรันการตรวจสอบประสิทธิภาพบนไฟล์ DLL อื่นๆ

ในข้อความด้านบ่น หมายความว่าระบบไม่พบ mscoree.dll เมื่อผู้ใช้พยายามค้นหาไฟล์โดยใช้ odctr /r ใน PowerShell (ในฐานะแอดมิน) จะมีข้อความว่ามีการแทนที่ mscoree.dll จากสำรอง เมื่อรันคำสั่ง lodctr /q เพื่อแสดงรายการซ่อมแซม mscoree.dll ก็ยังอยู่ในรายการ อย่างไรก็ตาม ข้อผิดพลาดยังคงปรากฏหลังจากทำตามขั้นตอนแก้ไขข้างต้น

ผู้ใช้ที่ได้รับผลกระทบบันทึกว่า นอกเหนือจากข้อผิดพลาดเหล่านี้ที่ปรากฏใน Event Viewer พวกเขาไม่ได้สังเกตเห็นอะไรผิดปกติกับคอมพิวเตอร์ ทุกอย่างทำงานได้ปกติ จึงไม่รู้ว่าสิ่งนี้อาจก่อให้เกิดอะไร และอะไรที่ไม่ได้ทำงานตามที่ควรจะเป็น

อย่างไรก็ตาม เมื่อคุณได้รับข้อผิดพลาดเหล่านี้ คุณไม่ต้องกังวล เพราะข้อผิดพลาดนี้เองไม่ใช่เรื่องใหญ่ มันเพียงแค่ Windows บอกว่ามันไม่สามารถรวบรวมข้อมูลประสิทธิภาพได้ ส่วนการกำจัดข้อผิดพลาดนั้นเป็นเรื่องที่ต่างหากไป

สาเหตุของ Event Error 1020 และ 1008 Microsoft-Windows-Perflib

ตามที่กล่าวมา ข้อผิดพลาดเหตุการณ์เหล่านี้อาจเกิดขึ้นกับแอปพลิเคชันต่างๆ เมื่อ Performance Monitor อ่านเคาน์เตอร์ทั้งหมดครั้งแรก กระบวนการเปิด (Open Procedure) ของส่วนขยายจะถูกเรียก

งานทั่วไปของกระบวนการเปิดคือการอ่านช่วงดัชนีออบเจ็กต์ที่รองรับจาก Registry ค่าดัชนีเหล่านี้ถูกเก็บไว้ในค่า Registry First Counter, First Help, Last Counter และ Last Help ภายใต้คีย์ประสิทธิภาพของแอปพลิเคชัน

หากกระบวนการเปิดล้มเหลวในการอ่านข้อมูล (เช่น รายการเหล่านี้ไม่มีอยู่หรือถูกลบโดยกระบวนการถอนการติดตั้ง) Event 1008 หรือ 1020 จะถูกบันทึกใน Event Log

ข้อผิดพลาด Event 1020 และ 1008 มักเกิดขึ้นเพราะรายการเคาน์เตอร์เสียหาย และ DLL ที่จำเป็นถูกปิดใช้งาน เมื่อเคาน์เตอร์ประสิทธิภาพล้มเหลวในการปลดโหลดสตริงสำหรับบริการที่ระบุ Registry อาจเสียหายและแสดงข้อผิดพลาด Perflib เหล่านี้

วิธีแก้ไข Event Error 1020 และ 1008 Microsoft-Windows-Perflib

แม้ข้อผิดพลาดนี้อาจไม่รุนแรงต่อระบบ Windows ของคุณ แต่มันอาจทำให้รำคาญจากการได้รับการแจ้งเตือน จึงอาจต้องการจัดการด้วยโซลูชันด้านล่าง

วิธีแก้ #1: รีสตาร์ทคอมพิวเตอร์

ขั้นตอนแรกในการแก้ไขข้อผิดพลาดใดๆ คือการรีบูตระบบ มักมีประสิทธิภาพในการแก้ไขข้อบกพร่องชั่วคราวบนคอมพิวเตอร์ กดปุ่ม Power แล้วรอสักครู่นำไปเริ่มใหม่ คุณยังสามารถลองบูตเข้าสู่ Safe Mode เพื่อดูว่าข้อผิดพลาดเกี่ยวข้องกับซอฟต์แวร์ของบุคคลที่สามหรือไม่

วิธีแก้ #2: ลบไฟล์ที่เสียหาย

ขั้นตอนแก้ไขพื้นฐานอีกอย่างคือการรันคำสั่ง SFC ใน Command Prompt เพื่อตรวจสอบไฟล์ที่เสียหายบนคอมพิวเตอร์ เครื่องมือนี้จะซ่อมแซมหรือแทนที่ไฟล์ที่เสียหายโดยอัตโนมัติเพื่อแก้ไขข้อผิดพลาดที่คุณอาจประสบ ก็แนะนำให้ทำความสะอาดระบบด้วย Outbyte PC Repair เพื่อป้องกันข้อผิดพลาดเพิ่มเติม

วิธีแก้ #3: แก้ไข Registry

เพื่อลบรายการที่เป็น孤儿 (orphaned entries) ปกติต้องทำตามขั้นตอนเหล่านี้:

  1. เปิด Registry Editor (Regedt32.exe หรือ Regedit.exe) และไปที่ Subkey ต่อไปนี้:
  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<service name>:\Performance
  3. ลบค่า "Open."
  4. รีสตาร์ทคอมพิวเตอร์เพื่อให้การเปลี่ยนแปลงมีผล

วิธีแก้ #4: สร้างใหม่ Performance Counters

เพื่อแก้ไขปัญหานี้ ให้สร้างรายการ Performance Counters ใหม่

  1. คลิก Start
  2. พิมพ์ CMD ในแถบค้นหา
  3. คลิกขวาที่ Command Prompt
  4. เลือก Run as administrator
  5. ป้อนคำสั่งต่อไปนี้และกด Enter – CD %SYSTEMROOT%\System32
  6. ที่ Command Prompt พิมพ์ lodctr /r
  7. กด Enter
  8. เช่นเดียวกัน สำหรับ Error 1008 พิมพ์ lodctr /e:<DLL name> แล้วกด Enter

โปรดทราบว่าต้องเป็นสมาชิกของกลุ่ม Administrators ท้องถิ่นจึงจะทำขั้นตอนนี้เสร็จสิ้นได้ ในการสร้างรายการเคาน์เตอร์ใน Registry ใหม่ ให้ทำดังนี้

  1. คลิกที่ปุ่ม Start ของ Windows 10/11
  2. ในกล่อง Search ที่ปรากฏ พิมพ์ CMD หรือ Command Prompt
  3. เมื่อเห็นตัวเลือก ให้คลิกขวาและเลือก Run as administrator
  4. ตอนนี้ในหน้าต่าง Command Prompt ที่ปรากฏ ให้ป้อนคำสั่งต่อไปนี้และกด Enter – cd %SYSTEMROOT%\System32
  5. อีกครั้ง ให้ป้อนคำสั่งต่อไปนี้และกด Enter – lodctr /r

วิธีแก้ #5: เปิดใช้งาน DLL ใหม่

เช่นเดียวกัน ข้อผิดพลาด 1008 Microsoft-Windows-Perflib เกิดขึ้นเมื่อ DLL ที่จำเป็นถูกปิดใช้งาน เพื่อแก้ไขปัญหา ให้พิมพ์ lodctr /e:</<DLL name> แล้วกด ENTER (แทนที่ <DLL name> ด้วยชื่อไฟล์ของไลบรารี)

เพื่อปิดใช้งาน DLL เคาน์เตอร์ที่ขยายได้หนึ่งหรือหลายตัว:

  1. เริ่ม Registry Editor (RegEdt32.exe)
  2. ไปที่ Subtree Registry ต่อไปนี้:
    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
  3. คลิก Find Key ในเมนู View
  4. พิมพ์ Performance เป็นสตริงค้นหา แล้วค้นหาจากนั้นลงมา
  5. ที่แต่ละรายการ Performance ที่คุณพบ ให้เลือกค่า Library และแก้ไขชื่อไลบรารีโดยเพิ่ม "xx" นำหน้า: เช่น เปลี่ยน OrigLib.dll เป็น xxOrigLib.dll
  6. เมื่อคุณทำทุกรายการ Performance ภายใต้ CurrentControlSet\Services แล้ว ให้รีสตาร์ท Perfmon เพื่อดูว่าทำงานหรือไม่ หากทำงาน ให้ทำซ้ำขั้นตอนสองขั้นตอนด้านบน แต่คืนค่าชื่อไลบรารีเดิม และลอง Perfmon หลังจากการเปลี่ยนแปลงแต่ละครั้ง เพื่อดูว่าไลบรารีไหนก่อให้เกิดข้อผิดพลาด

สรุป

การได้รับ Event Error 1020 และ 1008 Microsoft-Windows-Perflib บน Windows 10/11 น่ารำคาญ แต่ไม่ใช่ข้อผิดพลาดรุนแรง หากคุณไม่ต้องการเคาน์เตอร์ประสิทธิภาพสำหรับบริการที่กล่าวถึงในเหตุการณ์ คุณสามารถปิดใช้งานได้โดยใช้เครื่องมือ exctrlst.exe (Extensible Performance Counter List) อย่างไรก็ตาม นี่เป็นเพียงวิธีแก้ปัญหาชั่วคราวเพื่อไม่ให้ได้รับการแจ้งเตือนเหล่านี้ หากคุณต้องการแก้ไขข้อผิดพลาดเหล่านี้จริงๆ โปรดอ้างอิงคู่มือแก้ไขปัญหาข้างต้น