기본 콘텐츠로 건너뛰기

Microsoft Visual C++ Runtime Library 오류 삭제 및 재설치 방법

Visual C++ Runtime Library 오류는 “비주얼 C++ 자체가 고장났다”라기보다, 프로그램이 필요로 하는 Microsoft Visual C++ 재배포 패키지(Redistributable)가 없거나 버전이 꼬였거나, 32비트·64비트 파일이 섞이거나, 설치 자체가 손상된 상태에서 앱이 런타임을 호출하면서 터지는 경우가 대부분입니다. CAD, 3D 툴, 브라우저, 압축 프로그램처럼 네이티브(C/C++)로 만들어진 앱들이 특히 이 영향을 많이 받습니다.

그래서 증상은 비슷해도 메시지는 제각각 나오는데, 아래에 실제로 자주 뜨는 오류 문구들을 한 번에 모아두면 검색할 때도 훨씬 빨라집니다.

Microsoft Visual C++ Runtime Library 오류 메시지 모음

오류 유형대표 메시지(예시)의미 / 흔한 원인
Runtime Error 일반Runtime Error! Program: …
This application has requested the Runtime to terminate it in an unusual way.
앱이 런타임을 호출하다 비정상 종료. 충돌, 플러그인 문제, 재배포 패키지 손상에서 자주 발생
Abnormal terminationAbnormal Program Termination예외 종료를 뭉뚱그려 표시. 실제 원인은 이벤트 뷰어/충돌 로그에서 갈리는 편
Assertion failedMicrosoft Visual C++ Runtime Library
Assertion failed!
개발자가 넣어둔 검증(Assertion)이 깨짐. 손상된 파일, 플러그인 충돌, 그래픽/코덱 문제로도 발생
R6025R6025 - pure virtual function callC++ 객체 생명주기 꼬임/메모리 손상 상황에서 흔함. 앱 자체 버그 + 런타임 꼬임 조합이 많음
R6034R6034 An application has made an attempt to load the C runtime library incorrectly.런타임 로딩 경로 충돌. 중복 DLL, 플러그인, 오래된 VC++가 섞여 있을 때 자주 뜸
DLL 없음VCRUNTIME140.dll was not found
VCRUNTIME140_1.dll was not found
MSVCP140.dll was not found
대개 2015~2022 계열 재배포 패키지 미설치/손상. 64비트 OS라도 x86/x64 둘 다 필요한 경우가 많음
Universal CRTapi-ms-win-crt-runtime-l1-1-0.dll is missing
ucrtbase.dll is missing
구형 OS/업데이트 누락에서 많이 봄. Windows 업데이트로 해결되는 경우가 많음
Side-by-SideThe application has failed to start because its side-by-side configuration is incorrect.Visual C++ 구성 요소(매니페스트) 불일치. 여러 버전이 꼬였거나 설치가 망가졌을 때
0xc000007bThe application was unable to start correctly (0xc000007b)32/64비트 혼합(Invalid Image Format)에서 자주 발생. x86/x64 재배포 패키지 동시 설치가 해결책인 경우가 많음
0xc0000142The application was unable to start correctly (0xc0000142)DLL 초기화 실패. 런타임 손상, 보안 프로그램 후킹, 그래픽/프린터 드라이버 충돌에서도 발생
설치 오류 1935Error 1935. An error occurred during the installation of assembly component …Windows 구성 요소/업데이트 쪽 손상, .NET/VC 어셈블리 등록 실패. DISM/SFC로 OS 복구가 필요한 경우가 있음
설치 오류 0x800706430x80070643 Fatal error during installation설치 엔진(Windows Installer) 쪽 충돌, 기존 VC++ 꼬임, 보안 프로그램 간섭에서 자주 봄
설치 오류 1603 / 1722Error 1603 / Error 1722권한/임시폴더/설치 서비스 문제. 관리자 권한 실행, TEMP 정리, 클린 부팅으로 해결되는 경우가 많음

Microsoft Visual C++ Runtime Library 재설치 전에 먼저 해볼 것

삭제부터 들어가기 전에, 의외로 가장 빨리 끝나는 건 “복구(Repair)”입니다. 앱 및 기능(또는 프로그램 추가/제거)에서 Microsoft Visual C++ … Redistributable 항목을 찾아 수정/변경으로 들어가 Repair가 가능하면 먼저 복구를 한 번 돌려보세요. 여기서 살아나는 경우가 꽤 많습니다.

설치가 안 되거나 계속 오류가 나면 삭제 후 재설치

복구로 해결이 안 되면 그때는 “정리하고 다시 깔기”가 정답인 경우가 많습니다. 다만 Visual C++은 여러 프로그램이 공유해서 쓰기 때문에, 삭제 후에는 반드시 재설치까지 한 번에 이어가는 게 좋습니다.

순서무엇을 하는지포인트
1문제 앱 종료 + 재부팅 1회백그라운드 후킹(브라우저, 클라우드 동기화, 보안 프로그램)이 충돌을 키우는 경우가 있어 재부팅으로 “잠김”부터 해제
2Visual C++ 항목 중 손상 의심 버전 삭제최근 설치/업데이트 직후부터 문제면 그 버전부터 제거하는 게 부담이 적음. 애매하면 2015~2022 계열을 우선 대상으로 잡는 경우가 많음
3재부팅삭제만 하고 넘어가면 설치 서비스가 꼬여서 다음 단계가 또 실패하는 경우가 있음
4최신 지원 재배포 패키지 설치최신 “Microsoft Visual C++ Redistributable”을 설치. 64비트 윈도우라면 보통 x64와 x86을 모두 설치하는 쪽이 호환성에서 유리
5문제 앱 재실행동일 오류가 남으면 앱 자체 업데이트/플러그인/그래픽 드라이버 쪽으로 원인이 넘어가는 경우가 많음

최신 지원 재배포 패키지는 Microsoft 공식 문서의 “Latest supported Visual C++ Redistributable downloads”에서 내려받는 게 가장 깔끔합니다. 

x64 패키지는 ARM64 바이너리도 함께 포함된다는 점도 같이 안내되어 있어, 장치 아키텍처별로 헷갈릴 일이 줄어듭니다. 

재설치가 계속 실패할 때(특히 1935, 0x80070643, 1603)

이 구간부터는 “VC++ 설치 파일이 나쁘다”가 아니라, 윈도우 업데이트 구성 요소나 시스템 파일이 상해 있어서 설치 자체가 제대로 못 도는 케이스가 많습니다. 이때는 운영체제 복구 명령을 먼저 한 번 태워주는 게 효과가 좋습니다.

관리자 권한으로 명령 프롬프트를 열고 아래 명령을 실행한 뒤 재부팅하고, 그 다음 Visual C++ 설치를 다시 시도해보세요.

DISM.exe /Online /Cleanup-Image /RestoreHealth
sfc /scannow

DISM으로 윈도우 구성 요소를 복구한 다음 SFC로 손상된 시스템 파일을 검사·복구하는 흐름은 Microsoft 가이드에도 같은 순서로 안내되어 있습니다.

레지스트리 삭제, bcdedit 명령어는 신중하게

Visual C++ 문제를 해결한다고 해서 브라우저 헬퍼 오브젝트(BHO)나 Post Platform 같은 레지스트리 경로를 지우는 방식은, 증상과 무관한 곳을 건드려 다른 프로그램을 망가뜨릴 가능성이 더 큽니다. 정말로 “딱 그 키가 원인”인 경우는 드물고, 보통은 재배포 패키지 복구/재설치와 시스템 파일 복구 쪽이 정석입니다.

또한 bcdedit /set increaseUserVA 2800 류의 설정은 32비트 환경에서 가상 주소 공간을 조정하던 시절에나 의미가 있었고, 요즘처럼 64비트 윈도우/앱이 기본인 환경에서는 효과가 없거나 오히려 문제를 만들 수 있습니다. 이 오류가 반복된다면 “주소 공간 늘리기”보다, x86/x64 재배포 패키지를 올바르게 맞추고(OS 복구 포함) 충돌하는 백그라운드 프로그램을 정리하는 쪽이 성공률이 높습니다.

여기까지 했는데도 같은 Runtime Library 창이 계속 뜬다면, 그때부터는 Visual C++ 자체보다 “어떤 프로그램이 어떤 순간에 충돌하느냐”가 핵심이라 이벤트 뷰어(Windows 로그 → 응용 프로그램)에서 Faulting module name을 확인해 원인 DLL이나 플러그인을 좁혀가는 쪽이 빠릅니다.

댓글

adsense

태그

자세히 보기