ค้นหาเว็บไซต์

จะปิดการรายงานข้อผิดพลาดของ Windows และล้างโฟลเดอร์ WERReportQueue บน Windows ได้อย่างไร


บริการรายงานข้อผิดพลาดของ Windows (WER) ใช้เพื่อรวบรวมข้อมูลการแก้ปัญหาเกี่ยวกับความล้มเหลวของระบบและแอปของบุคคลที่สาม และส่งรายงานข้อผิดพลาดไปยังเซิร์ฟเวอร์ของ Microsoft ข้อมูลนี้ควรได้รับการวิเคราะห์โดย MSFT และหากมีวิธีแก้ไข ข้อมูลจะถูกส่งไปยังผู้ใช้ผ่าน Windows Error Reporting Response อันที่จริง มีเพียงไม่กี่คนที่ใช้คุณสมบัตินี้ แม้ว่า Microsoft จะปล่อยให้บริการ WER เปิดใช้งานตามค่าเริ่มต้นใน Windows เวอร์ชันล่าสุดเสมอ ในกรณีส่วนใหญ่ ผู้คนมักนึกถึง WER เมื่อเห็นว่า C:\ProgramData\Microsoft\Windows\WER\ReportQueue\ ใช้พื้นที่มากในไดรฟ์ระบบ (มากถึงหลายสิบ GB) แม้ว่าจะเป็น NTFS การบีบอัดถูกเปิดใช้งานสำหรับไดเร็กทอรีนี้เป็นค่าเริ่มต้น

บริการรายงานข้อผิดพลาดของ Windows

การรายงานข้อผิดพลาดของ Windows จะแสดงกล่องโต้ตอบเมื่อเกิดข้อผิดพลาดของแอปพลิเคชัน แจ้งให้คุณส่งรายงานข้อผิดพลาดไปยัง Microsoft เมื่อคุณเห็น “

YourAppName.exe has stopped working, Windows is collecting more information about the problem

” ข้อความแสดงข้อผิดพลาดใน Windows บริการรายงานข้อผิดพลาดของ Windows จะเรียกใช้เครื่องมือ WerFault.exe เพื่อรวบรวมข้อมูลการดีบัก (อาจรวมถึงการถ่ายโอนข้อมูลหน่วยความจำ)

ข้อมูลผู้ใช้จะถูกบันทึกไว้ในโปรไฟล์ผู้ใช้:

%USERPROFILE%\AppData\Local\Microsoft\Windows\WER\

และข้อมูลระบบไปที่ไดเร็กทอรี ProgramData:

%ALLUSERSPROFILE%\Microsoft\Windows\WER\

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

Get-Service WerSvc

ในไดเร็กทอรี WER\ReportQueue\ มีโฟลเดอร์จำนวนมากที่มีชื่อในรูปแบบต่อไปนี้:

  • Critical_6.3.9600.11285_{ID}_00000000_cab_3212dd23

  • Critical_powershell.exe_{ID}_cab_332a45c5

  • Critical_sqlservr.exe__{ID}_cab_b3a200181

  • NonCritical_7.9.9600.11285__{ID}_0bfab19a

  • AppCrash_cmd.exe_{ID}_dba332ad_12eb5425

อย่างที่คุณเห็น ชื่อไดเร็กทอรีประกอบด้วยระดับความรุนแรงของเหตุการณ์และชื่อของไฟล์ EXE เฉพาะที่ขัดข้อง ในโฟลเดอร์ทั้งหมด มีไฟล์ชื่อ Report.wer ซึ่งมีคำอธิบายข้อผิดพลาดและบางไฟล์ที่มีข้อมูลเพิ่มเติม

จะล้างโฟลเดอร์ WER\ReportQueue บน Windows ได้อย่างไร

โดยทั่วไป ขนาดของแต่ละโฟลเดอร์จะมีขนาดเล็ก แต่ในบางกรณี ดัมพ์หน่วยความจำจะถูกสร้างขึ้นสำหรับกระบวนการปัญหาที่ใช้พื้นที่มาก ภาพหน้าจอด้านล่างแสดงให้เห็นว่าขนาดของ memory.hdmp อยู่ที่ประมาณ 610 MB การถ่ายโอนข้อมูลดังกล่าวสองสามรายการสามารถใช้พื้นที่หลายกิกะไบต์ในไดรฟ์ระบบ

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

หากต้องการเพิ่มพื้นที่ว่างในดิสก์อย่างรวดเร็ว คุณสามารถลบดีบักและไฟล์บันทึกที่สร้างโดยบริการ WER ด้วยตนเองในโฟลเดอร์ต่อไปนี้:

  • C:\ProgramData\Microsoft\Windows\WER\ReportArchive\

  • C:\ProgramData\Microsoft\Windows\WER\ReportQueue\

คำสั่ง PowerShell ต่อไปนี้จะลบไฟล์ทั้งหมดที่เก่ากว่า 30 วันออกจากไดเร็กทอรี WER:

Get-ChildItem -Path  'C:\ProgramData\Microsoft\Windows\WER\ReportArchive' -Recurse | Where-Object CreationTime -lt (Get-Date).AddDays(-30) | Remove-Item -Force -Recurse
Get-ChildItem -Path  'C:\ProgramData\Microsoft\Windows\WER\ReportQueue' -Recurse | Where-Object CreationTime -lt (Get-Date).AddDays(-30) | Remove-Item -Force -Recurse

หากต้องการล้างไดเร็กทอรี WER ในโปรไฟล์ผู้ใช้ทั้งหมด ให้ใช้สคริปต์ PowerShell ต่อไปนี้:

$users = Get-ChildItem c:\users|where{$_.name -notmatch 'Public|default'}
foreach ($user in $users){
Get-ChildItem "C:\Users\$User\AppData\Local\Microsoft\Windows\WER\ " -Recurse -ErrorAction SilentlyContinue | Remove-Item -force -Recurse
}

ปิดใช้งานการรายงานข้อผิดพลาดของ Windows บน Windows Server

บน Windows Server 2019/2016/2012R2 คุณสามารถจัดการสถานะบริการ WER โดยใช้ PowerShell คุณสามารถปิดใช้งานบริการรายงานข้อผิดพลาดของ Windows:

Get-Service WerSvc| stop-service -passthru -force
Set-Service WerSvc -startuptype manual -passthru

แต่มีวิธีที่ดีกว่าในการปิดใช้งาน WER บน Windows PowerShell เวอร์ชัน 4.0 เพิ่มโมดูล WindowsErrorReporting แยกต่างหาก:

Get-Command -Module WindowsErrorReporting

คุณสามารถตรวจสอบสถานะของบริการ Windows Error Reporting ได้ด้วยคำสั่ง:

Get-WindowsErrorReporting

หากต้องการปิดใช้งาน WER ให้เรียกใช้:

Disable-WindowsErrorReporting

บน Windows Server 2012 R2 คุณสามารถปิดใช้งานการรายงานข้อผิดพลาดของ Windows ผ่านแผงควบคุม (แผงควบคุม -> ระบบและความปลอดภัย -> ศูนย์ปฏิบัติการ -> การบำรุงรักษา -> การตั้งค่า -> เลือก ฉันไม่ต้องการเข้าร่วม และอย่า' อย่าถามฉันอีก

จะปิดหรือเปิดใช้การรายงานข้อผิดพลาดใน Windows 10 ได้อย่างไร

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

คุณสามารถปิดใช้งานการรายงานข้อผิดพลาดของ Windows บน Windows 10 ผ่านทางรีจิสทรี ในการดำเนินการนี้ ให้สร้างพารามิเตอร์ DWORD (32 บิต) ใหม่ที่มีชื่อ ปิดใช้งาน และค่า 1 ภายใต้คีย์รีจิสทรี HKLM\SOFTWARE\Microsoft\Windows \การรายงานข้อผิดพลาดของ Windows

คุณสามารถปิดใช้งานการรวบรวมข้อผิดพลาดของ Windows สำหรับผู้ใช้เฉพาะด้วยคำสั่ง:

reg add "HKCU\Software\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d "1" /f

หรือปิดการใช้งาน WER สำหรับทุกคน:

reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting" /v "Disabled" /t REG_DWORD /d "1" /f

ตอนนี้ให้ตรวจสอบสถานะของพารามิเตอร์ รายงานปัญหา ในแผงควบคุมอีกครั้ง ควรเป็น ปิด

คุณสามารถปรับใช้พารามิเตอร์รีจิสทรีนี้กับคอมพิวเตอร์โดเมนผ่าน GPO

จะปิดการรายงานข้อผิดพลาดของ Windows อัตโนมัติผ่าน GPO ได้อย่างไร

คุณสามารถปิดใช้งานการบันทึกโดยบริการรายงานข้อผิดพลาดของ Windows ผ่าน Group Policy เปิดท้องถิ่น (

gpedit.msc

) หรือโดเมน GPO (

gpmc.msc

) และไปที่ส่วน GPO ต่อไปนี้ การกำหนดค่าคอมพิวเตอร์ -> เทมเพลตการดูแลระบบ -> ส่วนประกอบของ Windows -> การรายงานข้อผิดพลาดของ Windows ค้นหานโยบายชื่อ ปิดใช้งานการรายงานข้อผิดพลาดของ Windows และตั้งค่าเป็น เปิดใช้งาน การดำเนินการนี้จะปิดใช้งานการรวบรวมข้อมูลของ Windows และการรายงานข้อผิดพลาด

มีนโยบายที่คล้ายกันในส่วนการกำหนดค่าผู้ใช้

อัปเดตการตั้งค่า GPO (ไม่ต้องรีบูต)

ด้วยเหตุนี้ Windows จะไม่สร้างข้อความแสดงข้อผิดพลาดของแอปพลิเคชันและระบบอีกต่อไป และจะไม่ถูกส่งไปยัง Microsoft อีกต่อไป

บทความที่เกี่ยวข้อง