본문 바로가기
PC 오류 해결 노트 PC 오류 해결 노트
윈도우 오류, 드라이버, 게임 실행 문제를 직접 겪고 푼 기록

MSVCP140.dll 없음 오류 해결: Visual C++ 재배포 패키지 설치 순서

읽는 시간 약 7분

프로그램이나 게임을 켰을 때 MSVCP140.dll이 없다는 메시지가 뜨며 실행이 멈추는 경우 참고할 포스팅입니다. 원인과 공식 경로에서 패키지를 받는 순서, x86과 x64를 고르는 기준, 설치가 실패할 때의 점검, 프로그램을 다시 설치하기 전에 할 일을 차례로 정리합니다.

재배포 패키지 설치 공식 경로에서 받기

MSVCP140.dll이 없다는 메시지의 원인

흔한 원인은 Visual C++ 재배포 패키지가 PC에 없거나, 프로그램이 요구하는 버전보다 오래된 경우입니다. 마이크로소프트 문서는 이 패키지가 Microsoft C 및 C++ 런타임 라이브러리를 설치하며, MSVC 빌드 도구로 만든 많은 프로그램에 이 라이브러리가 필요하다고 설명합니다. MSVCP140.dll은 그 C++ 표준 라이브러리 쪽 파일입니다.

PC에 설치된 패키지 버전은 프로그램을 만들 때 쓴 빌드 도구 버전과 같거나 더 새로워야 합니다. 그래서 패키지가 이미 깔려 있어도 오래된 버전이면 같은 메시지가 나올 수 있습니다. 프로그램의 설치 관리자가 필요한 런타임을 PC에 제대로 설치하지 못한 경우도 흔한 원인입니다.

공식 경로에서 패키지 받아 설치하기

Visual Studio 2017 이상은 같은 재배포 파일을 공유하고 2015 도구로 만든 프로그램과도 이진 호환되므로, v14 최신 패키지 하나로 이 계열 프로그램을 모두 지원합니다. 받을 파일은 문제가 생긴 프로그램의 아키텍처와 윈도우가 지원하는 아키텍처로 정합니다.

x64와 x86 파일 고르기
상황설치할 파일단계의 의미
x64 윈도우에서 프로그램의 아키텍처를 모를 때vc_redist.x64.exe와 vc_redist.x86.exe 둘 다64비트 프로그램에는 64비트 런타임이, 32비트 프로그램에는 32비트 런타임이 필요합니다
32비트(x86) 윈도우vc_redist.x86.exex86 시스템에는 x64 패키지를 설치할 수 없습니다
ARM64 기반 PC실행할 프로그램의 아키텍처에 맞는 패키지ARM64 프로그램은 vc_redist.arm64.exe를 쓰고, x64 패키지에는 ARM64와 x64 파일이 함께 들어 있습니다
  1. 설정->시스템->정보를 열어 장치 사양에서 시스템 종류를 확인합니다. 위 표에서 받을 파일이 정해지는 단계입니다.
  2. 아래 마이크로소프트 문서의 v14 표에서 해당 아키텍처의 링크로 파일을 받습니다.
  3. 마이크로소프트의 재배포할 DLL 확인 문서에 따르면 x86 패키지는 x86과 x64 PC에 32비트 라이브러리를, x64 패키지는 x64 PC에 64비트 라이브러리를 설치합니다. 64비트 윈도우에서 어느 쪽 프로그램인지 모르면 둘 다 설치해 두는 것이 안전합니다.
  4. 내려받은 파일을 실행해 설치하고, 재시작 안내가 나오면 재시작한 뒤 프로그램을 다시 실행합니다.

앱 목록에 있는 Visual C++ 항목은 여러 프로그램이 같은 런타임을 쓰므로 정리하지 않는 것이 좋습니다.

지원되는 최신 Visual C++ 재배포 가능 패키지 다운로드 문서는 아래 링크에 있습니다.

https://learn.microsoft.com/ko-kr/cpp/windows/latest-supported-vc-redist

설치가 실패하거나 같은 메시지가 나올 때

설치 파일이 오류로 멈추거나 설치 뒤에도 같은 메시지가 나오면 아래 순서로 점검합니다.

관리자 권한으로 실행
  1. 백신 프로그램의 실시간 보호를 잠시 끄고 설치를 다시 시도한 뒤, 끝나면 보호를 다시 켭니다. 마이크로소프트 문서는 백신이 재배포 패키지 설치를 자주 막는다고 설명합니다.
  2. 설치 파일을 마우스 오른쪽 단추로 눌러 관리자 권한으로 실행합니다. 마이크로소프트의 설치 문제 해결 문서는 파일 접근 실패가 권한 부족과 관련이 매우 높다고 설명합니다.
  3. 설정->Windows 업데이트(윈도우 10은 설정->업데이트 및 보안->Windows 업데이트)에서 보류된 업데이트를 설치하고 PC를 다시 시작한 뒤 설치를 다시 시도합니다. 같은 문서는 드물게 오래된 시스템 구성 요소가 설치 문제를 일으킬 수 있다고 설명합니다.
  4. 제작사가 필요한 런타임이나 버전을 따로 안내했다면 그 안내를 먼저 따릅니다.

dll 파일만 따로 받아 넣지 않는 이유

MSVCP140.dll만 따로 내려받아 프로그램 폴더에 넣으라는 안내를 볼 수 있지만, 마이크로소프트가 안내하는 방법은 재배포 패키지 설치입니다. 마이크로소프트는 패키지를 통한 중앙 배포를 권장하며, 이 방식이어야 마이크로소프트가 런타임 라이브러리 파일을 프로그램과 따로 갱신할 수 있습니다. 프로그램 폴더에 파일을 직접 넣는 방식은 서비스상의 이유로 권장하지 않는다고 마이크로소프트 문서가 밝힙니다.

dll 파일 대신 패키지 설치

개별 dll을 올려 둔 사이트는 마이크로소프트 경로가 아니므로 파일의 출처와 버전을 알 수 없습니다. 같은 이름의 파일이라도 프로그램이 요구하는 버전과 다르면 오류가 이어질 수 있습니다. 패키지로 설치하면 출처와 버전을 알 수 없는 파일을 쓸 일이 없습니다.

프로그램을 다시 설치하기 전에 백업할 것

패키지를 설치해도 특정 프로그램에서만 메시지가 나오면 그 프로그램을 제작사 설치 파일로 다시 설치하는 단계로 넘어갑니다. 오류 메시지도 애플리케이션을 다시 설치하면 해결될 수 있다고 안내합니다. 프로그램 설치 관리자가 필요한 런타임을 함께 설치하는 경우가 있어서입니다.

제거 전 저장 파일 복사

프로그램을 제거하면 저장 위치가 함께 지워지는 경우가 있으므로, 제거 전에 그 프로그램이 저장한 문서, 게임 저장 파일, 설정 폴더를 외장 저장장치나 클라우드에 복사하고 열리는지 확인합니다. 복사본이 확인된 뒤에 제거하고 다시 설치합니다.

그래도 안 될 때

패키지를 최신으로 설치하고 프로그램도 다시 설치했는데 같은 메시지가 나오면 프로그램 제작사의 지원 채널에 메시지 전문과 윈도우 비트 수를 함께 문의합니다. 마이크로소프트 문서도 앱의 런타임 문제는 앱 공급업체에 문의하라고 안내합니다. 같은 프로그램이 0xc000007b 오류로도 막히는 경우는 0xc000007b 오류 해결 순서: 응용 프로그램을 올바르게 시작하지 못했을 때에 따로 정리했습니다.

그럼.. 다음 포스팅에서 또 뵙겠습니다.

PC 오류 해결 노트
함께 보면 좋은 글
error: Content is protected !!