본문 바로가기
호구지책/기타

[OS/윈도우] WER (Windows Error Report) - 윈도우 오류 디버깅

by 하늘의흐름 2018. 10. 17.
반응형

WER(Windows Error Report) 은 윈도우의 오류를 리포팅해주는 프로그램이다. 모든 윈도우에 기본적으로 탑재되어 있는데, 활성화 시키기 위해서는 레지스트리키에 값을 추가해 줘야 한다.



레지스트리키 내용은 다음과 같다.

Windows Registry Editor Version 5.00 


[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps\MakeCrash.exe]

"DumpFolder"=hex(2):25,00,4C,00,4F,00,43,00,41,00,4C,00,41,00,50,00,50,00,44,00,41,00,54,00,41,00,25,00,5C,00,43,00,72,00,61,00,73,00,68,00,44,00,75,00,6D,00

"DumpCount"=dword:00000010

"DumpType"=dword:00000002

"CustomDumpFlags"=dword:00000000



위의 레지스트리값은 MakeCrash.exe라는 프로그램을 실행하다가 죽었을 경우 크래시 덤프(Crash Dump)를 남긴다는 뜻이다. 크래시 덤프를 분석하면 해당 프로그램이 무슨 이유 때문에 죽었는지를 알 수 있다.


특정 프로그램이 아니라 어떤 프로그램이던 실행 중에 문제가 발생해서 종료가 되었을 경우 크래시 덤프를 남기려면 위의 키값에서 \MakeCrash.exe부분만 지우면 된다.


덤프가 만들어지는 경로는 LOCALAPPDATA%\CrashDumps 이다.

필요한 경우 덤프가 만들어지는 경로도 수정할 수 있다. 

이때 경로의 수정은 레지스트리 편집기로 해야 한다.



실제로 프로그램을 실행시켜서 오류가 발생하면 프로그램이름.dump가 생긴다.

그리고 그 덤프 파일을 분석하기 위해서는 Windbg가 필요하다. (다른 툴로도 가능하지만 이 툴이 편해보인다.)


Windbg에서 Ctrl + D 를 누르면  *.dmp파일을 오픈할 수 있다.


MakeCrash.exe.3392.dmp

MakeCrash.exe

usermode_dump_enable.reg



정리하자면 


1.reg로 레지스트리를 등록하고,

2.MakeCrash.exe를 실행해서 0 / 1을 입력해 오류를 발생시키고

3.LOCALAPPDATA%\CrashDumps 폴더에서 dmp 파일을 확인한다.

4.확인한 파일을 Windbg로 오픈해서 내용을 분석한다.








반응형

댓글