블루스크린

DLL·런타임 오류

드라이버 문제

게임 오류

윈도우 오류

프로그램 오류

광고자리 · 글 위

MSVCR100.dll이 없습니다 오류 원인 4가지와 증상별 해결 순서 (윈도우 10·11)

이 글을 3줄로 요약하면

· MSVCR100.dll은 그 프로그램의 파일이 아니라 Visual C++ 2010 런타임이 시스템에 깔아 두는 공용 파일입니다.

· 그래서 프로그램을 다시 설치해도 증상이 그대로입니다. 고칠 자리가 프로그램 쪽이 아니기 때문입니다.

· 원인은 네 갈래입니다. 아래 판별표에서 자기 증상을 먼저 찾고 해당 섹션만 처리하면 됩니다.

MSVCR100.dll은 정확히 무슨 파일인가

이름의 숫자 100이 무엇을 가리키는지 알면 고칠 자리가 바로 정해집니다.

MSVCR100.dll의 MSVCR은 Microsoft Visual C++ Runtime, 뒤의 100은 Visual Studio 2010의 버전 번호입니다. 즉 이 파일은 Visual C++ 2010으로 빌드된 프로그램이 공통으로 가져다 쓰는 C 런타임 라이브러리입니다.

중요한 점은 이 파일이 프로그램 폴더가 아니라 윈도우 시스템 폴더에 설치된다는 것입니다. 프로그램 설치 파일 안에 들어 있는 게 아니라, Visual C++ 2010 재배포 가능 패키지를 설치해야 시스템에 생깁니다.

그래서 프로그램을 지웠다 다시 깔아도 증상이 똑같습니다. 오류 창에 적힌 "프로그램을 다시 설치해 보십시오"라는 안내는 이 경우에는 맞지 않는 처방입니다. 없는 것은 프로그램 파일이 아니라 시스템 쪽 런타임이기 때문입니다.

같은 이유로 mfc100.dll, msvcp100.dll처럼 뒤에 100이 붙은 이름이 같이 뜨는 경우가 많습니다. 셋 다 2010 런타임 묶음에 들어 있는 파일이라, 재배포 패키지 하나로 함께 해결됩니다.

파일이 실제로 있는지 눈으로 확인하려면 64비트 파일은 C:\Windows\System32, 32비트 파일은 C:\Windows\SysWOW64를 봅니다. 이름이 헷갈리게 붙어 있지만 SysWOW64 쪽이 32비트입니다.

증상으로 원인 좁히기

언제 어떻게 떴는지에 따라 손댈 곳이 완전히 다릅니다.

증상 유력한 원인 먼저 볼 항목
새로 포맷했거나 윈도우를 갓 깐 PC에서 처음부터 뜬다 2010 런타임이 한 번도 설치된 적 없음 원인 A → 3번
설치된 앱 목록에 2010이 보이는데도 계속 뜬다 x86·x64 중 한쪽만 설치됨 원인 B → 4번
잘 쓰던 프로그램이 어느 날부터 갑자기 뜬다 다른 프로그램 제거 과정에서 런타임이 같이 지워짐 원인 C → 5번
재배포 패키지 설치가 중간에 실패한다 기존 설치본이 깨진 상태로 남아 있음 원인 C → 5번
DLL 파일을 인터넷에서 받아 넣은 뒤부터 뜬다 버전이 다른 파일이 정상 파일을 가로챔 원인 D → 6번
100이 아니라 140·120이 붙은 이름으로 뜬다 2010이 아닌 다른 연도의 런타임 아래 함께 보면 좋은 글

숫자가 다르면 다른 패키지입니다

100은 2010, 120은 2013, 140은 2015~2022 묶음입니다. 최신 패키지를 깔아도 100은 생기지 않습니다. 연도별로 별개 설치본이라 필요한 연도를 정확히 골라야 합니다.

원인 A재배포 패키지가 아예 설치돼 있지 않다

클린 설치를 갓 마친 PC에서 가장 흔한 경우입니다.

윈도우는 2010 런타임을 기본으로 포함하지 않습니다. 보통은 프로그램 설치 프로그램이 같이 깔아 주는데, 구형 프로그램은 이 과정을 생략하거나 실패해도 조용히 넘어가는 경우가 있습니다. 그러면 프로그램만 깔리고 런타임은 빠진 상태가 됩니다.

1설치 여부를 먼저 눈으로 확인한다

Win + I → 앱 → 설치된 앱 → 검색창에 Visual C++ 입력. 목록에 2010이 붙은 항목이 하나도 없으면 이 원인이 확정입니다.

2Microsoft 공식 배포처에서만 받는다

아래 참고 문서의 Microsoft Learn 페이지에 2010 SP1 재배포 패키지가 아키텍처별로 정리돼 있습니다. 파일 이름은 vcredist_x86.exe와 vcredist_x64.exe이고, 문서 기준 버전은 10.0.40219.325입니다.

3x86과 x64를 모두 설치하고 재부팅한다

64비트 윈도우에서도 둘 다 필요합니다. 이유는 4번에서 설명합니다. 설치가 끝나면 재부팅해야 시스템이 새 DLL 경로를 반영합니다.

이 방법이 안 통하는 경우

설치를 마쳤는데도 같은 창이 뜬다면, 한쪽 비트수만 깔렸거나 설치가 "성공"으로 끝났지만 파일이 갱신되지 않은 것입니다. 4번에서 비트수를, 그래도 남으면 5번에서 손상 여부를 확인합니다.

원인 B32비트·64비트 중 한쪽만 설치돼 있다

"분명히 깔았는데 계속 뜬다"의 대부분이 여기에 해당합니다.

런타임은 프로그램의 비트수를 따라갑니다. 64비트 윈도우를 쓰더라도 실행하려는 프로그램이 32비트로 만들어졌다면 32비트용 MSVCR100.dll이 필요합니다. x64만 설치했다면 그 프로그램에는 아무 소용이 없습니다.

설치 파일 필요한 경우 DLL이 놓이는 폴더
vcredist_x86.exe 32비트 프로그램 (구형 프로그램 다수) C:\Windows\SysWOW64
vcredist_x64.exe 64비트 프로그램 C:\Windows\System32
둘 다 설치 프로그램 비트수를 모를 때 양쪽 모두

폴더 이름에 속지 않습니다

이름만 보면 System32가 32비트, SysWOW64가 64비트처럼 읽히지만 정반대입니다. 64비트 윈도우에서 System32는 64비트, SysWOW64는 32비트 파일 자리입니다. 이 착각 때문에 "파일이 있는데 왜 없다고 하지"라는 상황이 자주 생깁니다.

1프로그램의 비트수를 확인한다

Ctrl + Shift + Esc로 작업 관리자를 열고 세부 정보 탭에서 플랫폼 열을 켜면 실행 중인 프로그램이 32비트인지 64비트인지 보입니다. 실행 자체가 안 되면 설치 폴더 위치로 짐작합니다. Program Files (x86)에 깔려 있으면 32비트입니다.

2비어 있는 쪽 폴더를 직접 확인한다

Win + E → 주소창에 C:\Windows\SysWOW64를 붙여넣고 검색창에 msvcr100.dll을 입력합니다. 결과가 비어 있으면 x86 패키지가 빠진 것입니다.

3빠진 쪽을 설치하고 재부팅한다

비트수를 특정하기 어렵다면 x86·x64를 모두 설치하는 편이 확실합니다. 두 패키지는 서로 충돌하지 않고 나란히 설치됩니다.

이 방법이 안 통하는 경우

양쪽 폴더에 파일이 모두 있는데도 같은 메시지가 뜬다면 파일은 있으나 내용이 깨졌거나 등록 정보가 어긋난 상태입니다. 5번으로 갑니다.

원인 C설치는 돼 있는데 파일이 손상됐다

잘 쓰던 프로그램이 어느 날 갑자기 안 켜지는 경우가 여기입니다.

다른 프로그램을 제거할 때 공용 런타임을 같이 지워 버리는 설치 관리자가 있습니다. 또 재배포 패키지 자체가 업데이트되다가 중간에 끊기면 목록에는 남아 있지만 파일은 온전하지 않은 상태가 됩니다.

1제거보다 복구를 먼저 시도한다

Win + I → 앱 → 설치된 앱 → 검색창에 Visual C++ → 2010 항목 우측 점 세 개(⋯) → 수정을 누르면 복구 / 제거 선택 창이 뜹니다. 여기서 복구를 고릅니다.

2복구로 안 되면 제거 후 재설치한다

같은 목록에서 2010이 붙은 항목을 전부 제거합니다. x86·x64가 따로 있으니 둘 다 지웁니다. 재부팅한 뒤 공식 배포처에서 새로 받은 설치 파일로 다시 설치합니다.

3설치가 계속 실패하면 순서를 바꾼다

"이미 설치되어 있습니다"라며 설치가 멈춘다면, 먼저 제거를 완료하고 재부팅한 다음 설치를 시도합니다. 제거 직후 재부팅 없이 다시 깔면 같은 메시지가 반복됩니다.

이 방법이 안 통하는 경우

제거·재설치를 마쳤는데도 그대로라면 같은 이름의 다른 파일이 먼저 잡히고 있을 가능성이 큽니다. 6번에서 수동으로 넣은 DLL이 없는지 확인합니다.

원인 D어디선가 받은 DLL을 폴더에 직접 넣었다

"DLL 다운로드" 사이트를 거쳤다면 이 항목부터 확인합니다.

DLL 파일 하나만 내려받아 시스템 폴더에 넣는 방식은 권장되지 않습니다. 이유는 두 가지입니다. 첫째, 출처를 확인할 수 없는 실행 코드를 시스템 폴더에 넣는 일이라 보안상 위험합니다. 둘째, 런타임은 파일 하나가 아니라 여러 파일이 같은 버전으로 맞물려 동작하기 때문에 한 개만 바꾸면 버전이 어긋납니다.

파일을 넣었더니 메시지가 바뀌었다면 신호입니다

"없습니다"에서 "잘못된 이미지"나 "프로시저를 찾을 수 없습니다"로 문구가 바뀌었다면, 파일은 잡혔지만 버전이 맞지 않는다는 뜻입니다. 넣은 파일을 지우고 정식 패키지로 되돌리는 편이 빠릅니다.

1수동으로 넣은 파일을 되돌린다

프로그램 폴더와 System32·SysWOW64에서 직접 복사해 넣었던 msvcr100.dll을 지웁니다. 그다음 5번의 복구 또는 재설치로 정식 파일을 다시 받습니다.

2시스템 파일 검사로 시스템 쪽을 확인한다

sfc /scannow

시작 버튼 우클릭 → 터미널(관리자)에서 실행합니다. "위반 사항을 발견하지 못했습니다"가 나오면 시스템 파일은 정상이라는 뜻이므로, 원인을 다시 A~C로 좁힙니다.

3sfc가 복구에 실패하면 이미지부터 고친다

DISM /Online /Cleanup-Image /RestoreHealth

"복구할 수 없었습니다"가 나올 때만 씁니다. 완료 후 sfc /scannow를 한 번 더 돌립니다.

이 방법이 안 통하는 경우

sfc·DISM이 모두 정상인데 증상이 남는다면 문제는 시스템이 아니라 그 프로그램이 요구하는 파일 쪽입니다. 7번에서 실제로 어떤 모듈에서 실패했는지 로그로 확인합니다.

무엇이 진짜 빠졌는지 확인하는 법

추측으로 패키지를 여러 개 깔기 전에, 로그에 남은 이름을 먼저 읽습니다.

오류 창은 파일 이름 하나만 보여주지만, 윈도우는 실행 실패를 이벤트 로그에 더 자세히 남깁니다. 여기에는 실패한 모듈 이름과 예외 코드가 함께 기록돼 있어, 정말 2010 런타임 문제인지 다른 연도인지 구분할 수 있습니다.

1이벤트 뷰어에서 실패 기록을 연다

Win + R → eventvwr.msc → Windows 로그 → 응용 프로그램. 오류가 난 시각과 가까운 빨간 오류 항목을 클릭하고 아래 일반 탭에서 오류 모듈 이름 줄을 봅니다.

2모듈 이름의 숫자로 연도를 되짚는다

msvcr100이면 2010, msvcr120이면 2013, vcruntime140이면 2015~2022입니다. 여기서 나온 숫자에 맞는 패키지만 설치하면 되므로 헛수고가 줄어듭니다.

3파일 속성으로 버전을 대조한다

System32 또는 SysWOW64의 msvcr100.dll을 우클릭 → 속성 → 자세히 탭에서 파일 버전을 봅니다. 10.0.40219 계열이면 2010 SP1 정품 파일입니다. 숫자가 전혀 다르면 6번의 수동 교체를 의심합니다.

모듈 이름이 140이었다면 VCRUNTIME140.dll·MSVCP140.dll 없음 오류 원인 4가지와 증상별 해결 순서 (윈도우 10·11) 2010이 아니라 2015~2022 묶음이 필요한 경우의 처리 순서입니다 · 눌러서 확인하기 →

자주 묻는 질문

설치 전에 자주 걸리는 지점들만 모았습니다.

Q.mfc100.dll, msvcp100.dll 오류도 같이 뜨는데 따로 잡아야 하나요?

A.아닙니다. 셋 다 같은 2010 재배포 패키지에 들어 있는 파일이라 패키지 하나로 함께 해결되는 경우가 대부분입니다. 다만 x86·x64 중 필요한 쪽이 설치돼야 한다는 조건은 동일합니다.

Q.Visual C++ 2010은 지원이 끝났다는데 지금 설치해도 되나요?

A.Microsoft 문서 기준으로 Visual Studio 2010 SP1은 2020년 7월 14일에 연장 지원이 종료됐습니다. 다만 재배포 패키지는 구형 프로그램 호환을 위해 아직 배포 목록에 남아 있고, 설치와 실행 자체는 가능합니다. 가능하면 그 프로그램의 최신 버전이 있는지도 함께 확인해 보는 편이 좋습니다.

Q.최신 Visual C++ 재배포 패키지를 깔면 100도 같이 들어가나요?

A.들어가지 않습니다. 연도별 런타임은 서로 독립된 설치본입니다. 2015~2022 패키지를 깔아도 msvcr100.dll은 생기지 않으므로, 2010 패키지를 따로 설치해야 합니다.

Q.DLL 파일만 따로 받아서 넣으면 안 되나요?

A.권장하지 않습니다. 출처가 불분명한 실행 코드를 시스템 폴더에 넣는 행위이고, 버전이 어긋나면 오류 문구만 바뀐 채 문제가 남습니다. 정식 재배포 패키지로 받는 편이 결과도 확실합니다.

Q.설치 후 재부팅을 꼭 해야 하나요?

A.재부팅 없이 되는 경우도 있지만, 이미 실행 중이던 프로세스는 옛 상태를 그대로 들고 있습니다. "깔았는데 그대로"의 상당수가 재부팅 전 확인입니다. 한 번은 재부팅하고 판단하는 편이 정확합니다.

함께 보면 좋은 글

숫자만 다른 런타임 오류들입니다. 원인 구조는 같습니다.

msvcr120.dll이 없습니다 오류 해결 순서 2013 런타임이 필요한 경우입니다 · 눌러서 확인하기 → MSVCR110.dll·MSVCP110.dll 없음 오류 해결 2012 런타임까지 함께 요구하는 프로그램에서 유용합니다 · 눌러서 확인하기 → 런타임 오류 R6034, C 런타임 라이브러리 오류 해결 순서 버전이 어긋난 런타임이 잡힐 때 나타나는 다른 형태입니다 · 눌러서 확인하기 →
확인 환경 · 윈도우 11 24H2 / 윈도우 10 22H2 기준, 2026년 8월 확인
참고 문서 · Microsoft Learn — 지원되는 최신 Visual C++ 재배포 가능 패키지 다운로드
참고 문서 · Microsoft 지원 — Windows에서 시스템 파일 검사기 사용

광고자리 · 글 아래