데스크톱 브리지 대한 C++ 런타임 프레임워크 패키지

이 문서에서는 올바른 C++ 런타임 라이브러리를 포함하는 데스크톱 브리지 컨테이너를 만드는 방법을 설명합니다.

원래 제품 버전: Windows 10
원본 KB 번호: 3176696

요약

C++ 런타임 라이브러리에 종속된 Windows 데스크톱 애플리케이션은 애플리케이션 패키지를 만드는 동안 데스크톱 브리지 해당하는 버전의 C++ 런타임 프레임워크 패키지를 지정해야 합니다. Visual Studio 또는 Visual C++ 런타임 재배포 가능 패키지(VCRedist)에 포함된 C++ 런타임 라이브러리를 재배포하는 대신 이 작업을 수행해야 합니다. 데스크톱 브리지 컨테이너에서 실행되는 Windows 데스크톱 애플리케이션은 Visual Studio 또는 VCRedist에 포함된 C++ 런타임 라이브러리를 사용할 수 없습니다. 데스크톱 브리지 컨테이너에서 실행되고 잘못된 버전의 C++ 런타임 라이브러리를 사용하는 애플리케이션은 파일 시스템 또는 레지스트리와 같은 리소스에 액세스하려고 할 때 실패할 수 있습니다. 이 문서에서는 올바른 C++ 런타임 라이브러리를 포함하는 데스크톱 브리지 컨테이너를 만드는 방법을 설명합니다.

데스크톱 프레임워크 패키지를 설치하고 업데이트하는 방법

Microsoft는 애플리케이션이 Windows 스토어를 통해 배포된 데스크톱 애플리케이션에서 C++ 런타임을 참조할 수 있도록 C++ 런타임 프레임워크 패키지를 제공합니다. 이러한 패키지는 Windows 스토어를 통해 배포 및 업데이트되며 C++ UWP 프레임워크 패키지와 유사하게 처리됩니다.

개발 목적으로 디버그 및 소매 앱 패키지의 현재 버전(v14.0)은 선택적 C++(v142) 유니버설 Windows 도구 구성 요소를 사용하여 유니버설 Windows 플랫폼 개발 워크로드를 선택할 때 Visual Studio 2019에 포함됩니다. 패키지는 에서 %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0찾을 수 있습니다.

Windows 샌드박스 또는 애플리케이션이 오프라인 머신에서 실행되는 경우와 같은 일부 시나리오에서 개발자는 아래 링크 중 하나에서 배포 아키텍처에 해당하는 패키지를 다운로드하고 PowerShell cmdlet을 사용하여 Add-AppxPackage 수동으로 설치하는 것이 더 쉬울 수 있습니다.

레거시 데스크톱 프레임워크 패키지

데스크톱 애플리케이션용 이전 C++ 런타임 프레임워크 패키지인 v11.0 및 v12.0은 다음 위치에서 다운로드하여 설치할 수 있습니다.

C++ 런타임 프레임워크 패키지는 아래 %ProgramFiles(x86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop의 하위 폴더에 복사됩니다. PowerShell cmdlet을 사용하여 패키지를 수동으로 설치할 Add-AppxPackage 수 있습니다.

데스크톱 프레임워크 패키지를 참조하는 방법

애플리케이션의 AppxManifest.xml 파일에서 적절한 프레임워크 패키지에 해당하는 값을 지정 PackageDependency 합니다.

  • 버전 11.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.110.00.UWPDesktop" MinVersion="11.0.61135.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US"/>
    </Dependencies>
    
  • 버전 12.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.120.00.UWPDesktop" MinVersion="120.40653.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
        <PackageDependency Name="Microsoft.VCLibs.120.00.UWPDesktop" MinVersion="12.0.40653.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
    </Dependencies>
    
  • 버전 14.0:

    <Dependencies>
        <PackageDependency Name="Microsoft.VCLibs.140.00.UWPDesktop" MinVersion="14.0.24217.0" Publisher="CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US" />
    </Dependencies>
    

이제 애플리케이션이 배포될 때 종속성 패키지에서 C++ 런타임 DLL을 설치합니다.

참조

Centennial 프로젝트에서 Visual C++ 런타임 사용