다음을 통해 공유


Visual C++ 파일 재배포

참고 항목

Visual C++ 런타임 파일 중 하나의 다운로드를 찾고 있습니까? 지원되는 최신 Visual C++ 재배포 가능 패키지 다운로드 페이지로 이동합니다.

재배포 가능 파일 및 라이선싱

애플리케이션을 배포할 때 이 애플리케이션을 지원하는 데 필요한 파일도 배포해야 합니다. Microsoft에서 이러한 파일을 제공하는 경우 파일을 다시 배포할 수 있는지 여부를 확인합니다. IDE에서 Visual Studio 사용 조건에 대한 링크를 찾을 수 있습니다. Microsoft Visual Studio 정보 대화 상자에서 사용 조건 링크를 사용합니다. 또는 Visual Studio 라이선스 디렉터리에서 관련 EULA 및 라이선스를 다운로드합니다.

Visual Studio 2022 Microsoft 소프트웨어 사용 조건의 "배포 가능 코드" 섹션에서 참조된 "REDIST 목록"을 보려면 Microsoft Visual Studio 2022에 대한 배포 가능 코드 파일을 참조하세요.

Visual Studio 2019 Microsoft 소프트웨어 사용 조건의 "배포 가능 코드" 섹션에서 참조된 "REDIST 목록"을 보려면 Microsoft Visual Studio 2019에 대한 배포 가능 코드 파일을 참조하세요.

Visual Studio 2017 Microsoft 소프트웨어 사용 조건의 "배포 가능 코드" 섹션에서 참조된 "REDIST 목록"을 보려면 Microsoft Visual Studio 2017에 대한 배포 가능 코드 파일을 참조하세요.

Visual Studio 2015 Microsoft 소프트웨어 사용 조건의 "배포 가능 코드" 섹션에서 참조된 "REDIST 목록"을 보려면 Microsoft Visual Studio 2015에 대한 배포 가능 코드 파일을 참조하세요.

재배포 가능 파일에 대한 자세한 내용은 재배포할 DLL 확인배포 예제를 참조하세요.

재배포 가능 파일 찾기

재배포 가능 파일을 배포하려면 Visual Studio에서 설치한 재배포 가능 패키지를 사용할 수 있습니다. 2017년 이후의 Visual Studio 버전에서 이러한 파일의 이름은 vc_redist.arm64.exe, vc_redist.x64.exevc_redist.x86.exe입니다. Visual Studio 2015, 2017 및 2019에서는 이름 vcredist_x86.exe, vcredist_x64.exe 및 (2015에만 해당)vcredist_arm.exe에서 사용할 수 있습니다.

재배포 가능 파일을 찾는 가장 쉬운 방법은 개발자 명령 프롬프트에서 설정된 환경 변수를 사용하는 것입니다. Visual Studio 2022에서 재배포 가능 파일은 %VCINSTALLDIR%Redist\MSVC\v143 폴더에 있습니다. 최신 버전의 Visual Studio 2019에서는 %VCINSTALLDIR%Redist\MSVC\v142 폴더에서 재배포 가능 파일을 찾을 수 있습니다. Visual Studio 2017 및 Visual Studio 2019에서는 %VCToolsRedistDir%에 있습니다. Visual Studio 2015에서 이러한 파일은 %VCINSTALLDIR%redist\<locale>에서 찾을 수 있습니다. 여기서 <locale>은 재배포 가능 패키지의 로캘입니다.

Visual Studio 2022 및 2019에서 병합 모듈 파일은 Visual Studio 설치 관리자에서 C++ <버전> 재배포 가능 MSM이라는 선택적 설치 가능 구성 요소의 일부입니다. 병합 모듈은 기본적으로 Visual Studio 2017 및 Visual Studio 2015에서 C++ 설치의 일부로 설치됩니다. Visual Studio 2022에 설치되면 %VCINSTALLDIR%Redist\MSVC\v143\MergeModules에서 재배포 가능 병합 모듈을 찾을 수 있습니다. 최신 버전의 Visual Studio 2019에서는 재배포 가능한 병합 모듈이 %VCINSTALLDIR%Redist\MSVC\v142\MergeModules에 있습니다. Visual Studio 2019 및 Visual Studio 2017에서는 %VCToolsRedistDir%MergeModules에도 있습니다. Visual Studio 2015에서는 Program Files [(x86)]\Common Files\Merge Modules에 있습니다.

재배포 가능 패키지 설치

Visual C++ 재배포 가능 패키지는 모든 Visual C++ 라이브러리를 설치하고 등록합니다. 이 패키지를 사용하는 경우 애플리케이션을 설치하기 전에 대상 시스템에서 필수 구성 요소로 실행합니다. Visual C++ 라이브러리의 자동 업데이트를 사용하기 때문에 이러한 배포 패키지를 사용하는 것이 좋습니다. 이러한 패키지를 사용하는 방법에 대한 예제는 연습: Visual C++ 재배포 가능 패키지를 사용하여 Visual C++ 애플리케이션 배포를 참조하세요.

각 Visual C++ 재배포 가능 패키지는 컴퓨터에 최신 버전이 있는지 여부를 확인합니다. 최신 버전이 있는 경우 패키지가 설치되지 않습니다. Visual Studio 2015 이상에서 재배포 가능 패키지에 설치 실패를 알리는 오류 메시지가 표시됩니다. /quiet 플래그를 사용하여 패키지를 실행하는 경우 오류 메시지가 표시되지 않습니다. 어떤 경우든 오류가 Microsoft Installer에 기록되며, 오류 결과가 호출자에게 반환됩니다. Visual Studio 2015 이상에서는 레지스트리를 검사하여 최신 버전이 설치되어 있는지 확인함으로써 이 오류를 방지할 수 있습니다. 현재 설치된 버전 번호는 HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0\VC\Runtimes\{x86|x64|arm64} 키에 저장됩니다. 최신 재배포 가능 패키지는 이전 버전인 2015 버전까지 이진 호환되므로 Visual Studio 2015, 2017, 2019 및 2022의 버전 번호는 14.0입니다. 플랫폼에 설치된 vcredist 버전에 따라 키는 arm64, x86 또는 x64입니다. (RegEdit을 사용하여 x64 플랫폼에 설치된 x86 패키지의 버전을 확인하는 경우에만 Wow6432Node 하위 키에서 확인해야 합니다.) 버전 번호는 REG_SZ 문자열 값 VersionMajor, Minor, BldRbld REG_DWORD 값 집합에도 저장됩니다. 설치 시 오류를 방지하려면 현재 설치된 버전이 최신 버전인 경우 재배포 가능 패키지 설치를 건너뛰어야 합니다.

재배포 가능 패키지의 명령줄 옵션

Visual C++ 재배포 가능 패키지는 여러 명령줄 옵션을 지원합니다. /?, /h 또는 /help 옵션에는 사용 가능한 옵션이 나열된 팝업 대화 상자가 표시됩니다. 재배포 가능 패키지를 설치하려면 /install, 복구하려면 /repair, 제거하려면 /uninstall을 지정할 수 있습니다. /layout 옵션은 현재 디렉터리에 재배포 가능 패키지의 전체 콘텐츠를 복사합니다. 기본적으로 재배포 가능 패키지는 해당 콘텐츠를 설치하고 사용자에게 관련 정보와 설치 후 다시 시작할지 여부를 묻는 메시지를 표시합니다. 진행률을 표시하는 /passive 옵션을 지정할 수 있지만, 그렇지 않은 경우에는 사용자 상호 작용이 필요하지 않습니다. UI를 표시하지 않고 사용자 상호 작용이 필요하지 않은 /quiet 옵션을 지정할 수도 있습니다. /norestart 옵션을 사용하면 다시 시작이 수행될 수 있습니다. 기본적으로 로그 파일은 %TEMP%에 만들어집니다. /log filename.txt를 사용하여 특정 파일에 로깅할 수 있습니다.

이 예제 명령은 x64 재배포 가능 패키지를 설치합니다. 설치 진행률을 표시하지만 사용자 상호 작용 또는 다시 시작 작업은 필요하지 않습니다.

vc_redist.x64.exe /install /passive /norestart

재배포 가능 병합 모듈 설치

Important

Visual C++ 재배포 가능 파일에 대한 병합 모듈(.msm 파일)은 더 이상 사용되지 않습니다. 애플리케이션 배포에는 사용하지 않는 것이 좋습니다. 대신에 Visual C++ 재배포 가능 패키지를 중앙에 배포하는 것이 좋습니다. 재배포 가능 패키지를 통한 중앙 배포를 사용하면 Microsoft에서 런타임 라이브러리 파일을 독립적으로 제공할 수 있습니다. 또한 해당 앱을 제거해도 중앙 배포를 사용하는 다른 애플리케이션에 영향을 주지 않습니다. 중앙 배포를 위해 재배포 가능 패키지를 사용하는 경우 사용자가 런타임 라이브러리를 추적하고 유지 관리할 필요가 없습니다. 그렇지 않으면 런타임 라이브러리 파일을 업데이트하려면 .msi 설치 관리자를 업데이트하고 다시 배포해야 합니다. 앱은 업데이트할 때까지 버그 또는 보안 문제에 취약할 수 있습니다.

재배포 가능 병합 모듈은 애플리케이션을 배포하는 데 사용하는 Windows Installer 패키지(또는 유사한 설치 패키지)에 포함되어야 합니다. 자세한 내용은 병합 모듈을 사용하여 재배포를 참조하세요. 예제에 대해서는 연습: 설치 프로젝트를 사용하여 Visual C++ 애플리케이션 배포를 참조하세요.

개별 재배포 가능 파일 설치

애플리케이션 로컬 폴더에서 재배포 가능 DLL을 직접 설치할 수도 있습니다. 애플리케이션 로컬 폴더는 애플리케이션 실행 파일이 들어 있는 폴더입니다. 서비스 편의를 위해 이 설치 위치는 사용하지 않는 것이 좋습니다.

발생 가능한 런타임 오류

Windows에서 애플리케이션에 필요한 재배포 가능 라이브러리 DLL 중 하나를 찾을 수 없는 경우, "library.dll을 찾을 수 없어 이 애플리케이션을 시작하지 못했습니다. 애플리케이션을 다시 설치하면 이 문제가 해결될 수 있습니다."와 비슷한 메시지가 표시될 수 있습니다.

이러한 종류의 오류를 해결하려면 애플리케이션 설치 관리자가 올바르게 빌드되는지 확인합니다. 재배포 가능 라이브러리가 대상 시스템에 올바르게 배포되었는지 확인합니다. 자세한 내용은 Visual C++ 애플리케이션의 종속성 이해를 참조하세요.

병합 모듈을 사용하여 재배포
Visual C++ 재배포 가능 병합 모듈을 사용하여 Visual C++ 런타임 라이브러리를 공유 DLL로 %windir%\system32\ 폴더에 설치하는 방법에 대해 설명합니다.

Visual C++ ActiveX 컨트롤 재배포
ActiveX 컨트롤을 사용하는 애플리케이션을 재배포하는 방법에 대해 설명합니다.

MFC 라이브러리 재배포
MFC를 사용하는 애플리케이션을 재배포하는 방법에 대해 설명합니다.

ATL 애플리케이션 재배포
ATL을 사용하는 애플리케이션을 재배포하는 방법에 대해 설명합니다. Visual Studio 2012 이상에서는 ATL 라이브러리가 필요하지 않습니다.

배포 예제
Visual C++ 애플리케이션을 배포하는 방법을 보여 주는 예제에 대한 링크입니다.

데스크톱 애플리케이션 배포
Visual C++ 배포 개념과 기술을 소개합니다.