블루스크린

DLL·런타임 오류

드라이버 문제

게임 오류

윈도우 오류

프로그램 오류

광고자리 · 글 위

0xc0000005 오류 원인 4가지와 증상별 해결 순서 (액세스 위반, 윈도우 10·11)

이 글을 3줄로 요약하면

· 0xc0000005는 마이크로소프트 문서에 STATUS_ACCESS_VIOLATION으로 정의된 값입니다.

· 프로그램이 허용되지 않은 메모리 주소를 건드렸을 때 윈도우가 강제로 끊는 것이라, 원인은 프로그램 바깥에 있는 경우가 많습니다.

· 재설치부터 하기 전에 아래 판별표에서 내 상황을 먼저 좁히세요.

0xc0000005는 정확히 무슨 뜻인가

코드의 정의를 알면 왜 재설치가 잘 안 통하는지가 보입니다.

마이크로소프트 드라이버 문서는 이 값을 STATUS_ACCESS_VIOLATION으로 명시하고, "메모리 액세스 위반이 발생했다"고 설명합니다. 디버거 문서에 실린 설명은 더 구체적입니다.

"특정 주소의 명령이 다른 주소의 메모리를 참조했고, 그 메모리에 대한 작업이 허용되지 않았다" — 즉 프로그램이 자기 몫이 아닌 메모리를 건드렸고 윈도우가 그 순간 실행을 끊었다는 뜻입니다.

여기서 중요한 갈래가 생깁니다. 프로그램 자체의 버그일 수도 있지만, 실제로는 접근을 막고 있는 쪽에 원인이 있는 경우가 훨씬 흔합니다. 권한, 백신, 메모리 보호 기능, 손상된 시스템 파일이 그것입니다.

그래서 프로그램 재설치가 잘 안 통합니다

막고 있는 쪽이 그대로면 프로그램을 몇 번을 다시 깔아도 같은 지점에서 같은 코드로 멈춥니다. 원인을 먼저 좁혀야 하는 이유입니다.

증상 판별표 — 내 경우는 어느 원인인가

가장 가까운 줄을 찾아 해당 항목으로 바로 넘어가세요.

증상 유력한 원인 먼저 볼 항목
관리자 계정에서는 되는데 일반 계정에서만 안 된다 권한 부족 원인 A → 관리자 권한 실행
설치는 됐는데 실행 파일이 조용히 사라져 있다 백신 격리 원인 B → 보호 기록 확인
백신 실시간 감시를 끄면 실행된다 보안 프로그램 차단 원인 B → 예외 등록
오래된 프로그램에서만 반복해서 뜬다 DEP 충돌 원인 C → DEP 예외
여러 프로그램에서 동시에 같은 코드가 난다 시스템 파일·메모리 손상 원인 D → DISM·sfc
특정 게임에서만, 그것도 특정 구간에서만 뜬다 게임 파일·그래픽 드라이버 원인 D → 무결성 검사

원인 A권한이 모자라 접근이 막혔다

가장 빠르게 확인할 수 있으니 여기부터 지나갑니다.

보호된 폴더나 시스템 영역에 접근해야 하는 프로그램이 일반 권한으로 실행되면 그 시점에 액세스 위반이 납니다. 특히 C:\Program Files 아래에 설정 파일을 쓰려는 오래된 프로그램에서 자주 나옵니다.

1한 번만 관리자 권한으로 실행해 본다

실행 파일 또는 바로 가기를 우클릭 → "관리자 권한으로 실행". 이 한 번으로 정상 실행되면 원인이 확정됩니다.

2매번 그렇게 뜨도록 속성에 고정한다

실행 파일 우클릭 → "속성" → 상단 "호환성" 탭 → "이 프로그램을 관리자 권한으로 실행" 체크. 같은 탭에서 호환 모드를 이전 윈도우 버전으로 맞춰 볼 수도 있습니다.

이 방법이 안 통하는 경우

관리자 권한으로 실행해도 같은 코드가 뜨거나, 애초에 실행 파일이 폴더에서 사라져 있다면 권한 문제가 아닙니다. 원인 B로 넘어가세요.

원인 B백신·보안 프로그램이 차단하고 있다

액세스 위반은 보안 소프트웨어가 개입할 때도 그대로 나타납니다.

보안 프로그램은 의심스러운 메모리 동작을 감지하면 그 자리에서 끊습니다. 프로그램 입장에서는 접근이 거부된 것이므로 결과적으로 같은 코드가 표시됩니다.

1보호 기록에서 격리된 항목을 확인한다

해당 프로그램의 실행 파일이나 DLL 이름이 목록에 있으면 그것이 원인입니다. 신뢰할 수 있는 프로그램이라면 복원하고 예외로 등록합니다.

2실시간 감시를 잠깐 끄고 원인을 가른다

감시를 끈 상태에서 정상 실행되면 백신이 원인으로 확정됩니다. 확인이 끝나면 반드시 다시 켜고, 감시를 끈 채로 쓰는 대신 해당 프로그램만 예외 목록에 넣습니다.

예외 등록 전에 파일 출처를 확인하세요

오탐도 있지만 진짜 탐지도 있습니다. 공식 배포처에서 받은 프로그램이 아니라면 예외 등록보다 파일을 다시 받는 편이 안전합니다.

이 방법이 안 통하는 경우

보호 기록이 비어 있고 실시간 감시를 꺼도 똑같다면 백신이 아닙니다. 윈도우 자체의 메모리 보호 기능 쪽인 원인 C로 넘어가세요.

이 문제도 확인해보세요 0xc0000906 오류 — 프로그램이 백신에 차단되어 실행 안 될 때 차단이 원인이라는 게 코드로 명확히 드러나는 경우의 절차입니다 · 눌러서 확인하기 →

원인 CDEP가 프로그램의 동작을 끊고 있다

오래된 프로그램에서 반복될 때 가장 유력한 원인입니다.

DEP(데이터 실행 방지)는 데이터 영역에서 코드가 실행되는 것을 막는 보안 기능입니다. 마이크로소프트 개발 문서는 보호된 페이지에서 코드를 실행하려 하면 STATUS_ACCESS_VIOLATION 상태 코드로 예외가 발생한다고 직접 설명합니다.

즉 이 코드는 DEP가 정상 작동한 결과일 수 있습니다. 옛 방식으로 만들어진 프로그램이 지금 기준에서 걸리는 것입니다.

1시스템 속성에서 DEP 설정 화면을 연다

sysdm.cpl

Win + R에 입력 → 상단 "고급" 탭 → 성능 영역의 "설정" 버튼 → "데이터 실행 방지" 탭.

2그 프로그램만 예외로 등록한다

"다음에 대해서만 DEP 사용"을 선택하고 "추가" 버튼으로 해당 프로그램의 exe 파일을 지정합니다. 적용 후 재부팅해야 반영됩니다.

DEP를 시스템 전체에서 끄지 마세요

전체를 끄면 그 프로그램뿐 아니라 모든 프로그램이 이 보호를 잃습니다. 필요한 것은 예외 하나이지 기능 해제가 아닙니다. 또 일부 시스템 구성 요소는 예외 등록 자체가 막혀 있습니다.

이 방법이 안 통하는 경우

예외로 등록하고 재부팅했는데도 같은 코드가 뜨거나, 해당 프로그램이 예외 목록에 추가되지 않는다면 DEP 문제가 아닙니다. 원인 D로 넘어가세요.

원인 D시스템 파일·메모리·드라이버 손상

여러 프로그램에서 동시에 난다면 개별 프로그램 문제가 아닙니다.

1시스템 이미지를 복구한 뒤 시스템 파일을 검사한다

DISM.exe /Online /Cleanup-image /Restorehealth
sfc /scannow

여러 프로그램이 공유하는 시스템 DLL이 손상되면 각각의 프로그램에서 같은 코드가 납니다. 두 명령을 합쳐 20분 이상 걸릴 수 있으니 창을 닫지 않습니다.

2메모리를 점검한다

mdsched.exe

램 불량은 액세스 위반의 전형적인 원인 중 하나입니다. 오류가 나오면 램을 하나씩 꽂아 어느 모듈인지 좁힙니다.

이미지_0xc0000005 윈도우 메모리 진단 실행

3게임이라면 파일 무결성 검사와 그래픽 드라이버를 본다

특정 게임에서만 반복된다면 플랫폼의 "게임 파일의 무결성 확인" 기능을 먼저 돌립니다. 그다음 그래픽 드라이버를 최신 버전으로 맞춥니다.

이 방법이 안 통하는 경우

sfc가 "일부 파일을 복구할 수 없습니다"로 끝나면 %windir%\Logs\CBS\CBS.log에서 걸린 파일을 확인합니다. 네 원인을 모두 지나왔다면 다음은 이벤트 뷰어로 원인 모듈을 직접 특정하는 단계입니다.

문제를 정확히 찾아내는 법

추측을 멈추고 어느 모듈에서 터졌는지 이름으로 확인합니다.

이 오류는 흔적을 남깁니다. 이벤트 뷰어의 응용 프로그램 로그에는 오류 모듈 이름과 예외 코드가 함께 기록됩니다. 이 두 줄이 원인을 가장 빠르게 좁혀 줍니다.

1이벤트 뷰어를 열어 응용 프로그램 로그를 본다

eventvwr.msc

"Windows 로그" → "응용 프로그램"에서 프로그램이 멈춘 시각의 빨간 오류 항목을 찾습니다.

오류 모듈 이름 해석 먼저 볼 항목
프로그램 자기 자신의 exe 프로그램 내부 문제 또는 DEP 원인 C
ntdll.dll·KERNELBASE.dll 시스템 계층에서 차단 원인 A·B
보안 프로그램 관련 DLL 백신 개입 원인 B
그래픽 드라이버 DLL 드라이버 충돌 원인 D

예외 코드 줄에 0xc0000005가 그대로 찍혀 있다면 지금 보고 있는 오류가 맞습니다. 다른 값이라면 원인이 다른 오류일 수 있습니다.

자주 묻는 질문

본문에서 다루지 못한 갈래를 짧게 정리했습니다.

Q.프로그램을 재설치해도 안 되던데요.

A.원인이 권한·백신·DEP·시스템 파일 쪽이면 재설치로는 바뀌는 게 없습니다. 이 코드에서 재설치를 먼저 시도하는 것이 가장 흔한 시간 낭비입니다.

Q.DEP 예외로 등록해도 안 풀리면 어떡하나요?

A.최신 윈도우와 호환되지 않는 프로그램일 수 있습니다. 호환성 탭에서 이전 윈도우 버전으로 실행해 보고, 제작사에 업데이트 버전이 있는지 확인하세요.

Q.메모리 진단에서 오류가 나오면 바로 교체해야 하나요?

A.교체 전에 재장착과 슬롯 변경을 먼저 시도해 보세요. 접촉 불량이 원인인 경우가 있어 그것만으로 해결되기도 합니다.

Q.같은 코드가 블루스크린으로도 뜰 수 있나요?

A.있습니다. 마이크로소프트의 SYSTEM_SERVICE_EXCEPTION 문서에도 0xC0000005가 액세스 위반 값으로 등장합니다. 프로그램만 꺼지는 것이 아니라 시스템이 멈춘다면 커널 쪽에서 같은 위반이 일어난 것입니다.

함께 보면 좋은 글

같은 프로그램 실행 실패 계열에서 이어 보면 좋은 글입니다.

0xc0000142 오류 해결법 (응용 프로그램을 올바르게 시작하지 못했습니다) 실행이 아니라 초기화 단계에서 실패하는 경우와 구분해 보세요 · 눌러서 확인하기 → 윈도우 0xc0000022 오류 해결법 (액세스 거부) 권한이 원인이라는 게 코드로 분명히 드러나는 경우의 절차입니다 · 눌러서 확인하기 → 0xc0000409 오류 (스택 버퍼 오버플로우가 감지되었습니다) 메모리 보호 기능이 프로그램을 끊는 또 다른 사례입니다 · 눌러서 확인하기 →

광고자리 · 글 아래