Skip to main content
앱이 Microsoft Store에서 프레임워크 패키지로 사용할 수 있는 재배포 가능 소프트웨어에 의존해 왔다면, 해당 재배포 가능 파일을 체인 설치하는 대신 프레임워크 패키지에 대한 종속성을 선언할 수 있습니다. 그러나 Microsoft Store에 종속된 재배포 가능 파일에 사용할 수 있는 프레임워크 패키지가 없다면 이 방법을 사용하지 마세요. 대신 사용자 지정 설치 액션을 고려하세요.

세부 정보

  • 필요한 재배포 가능 파일에 대한 내보내기 라이브러리를 참조하여 일반적인 방식으로 앱을 개발합니다.
  • 종속된 재배포 가능 파일을 앱과 번들로 제공하는 대신, 매니페스트를 업데이트하여 관련 프레임워크 패키지에 대한 종속성을 선언합니다.
  • 사용자가 Microsoft Store에서 앱을 설치하면 종속성이 감지되며, 앱에서 프레임워크 패키지를 사용할 수 있도록 보장됩니다. 프레임워크 패키지가 이미 사용자의 장치에 설치되어 있으면 추가 작업이 필요하지 않습니다. 그렇지 않으면 Microsoft Store는 프레임워크 패키지를 사용하는 앱의 설치를 진행하기 전에 프레임워크 패키지의 설치를 트리거합니다.
  • x86 빌드의 앱은 x86 빌드의 프레임워크 패키지를 사용합니다. x64 빌드의 앱은 x64 빌드의 프레임워크 패키지를 사용합니다. 아키텍처를 지정하기 위해 무언가를 할 필요가 없습니다. 플랫폼이 이를 대신 처리합니다.

DirectX 런타임

이 프레임워크 패키지는 기존 DirectX SDK에서 제공하는 다양한 병렬 선택적 구성 요소를 제공합니다. 애플리케이션이 더 이상 사용되지 않는 Direct3D 유틸리티 라이브러리 D3DX9, D3DX10 또는 D3DX11, XAudio 2.7, XInput 1.3 또는 XACT를 사용하는 경우, 이 패키지를 사용하여 패키지된 Win32 데스크톱 애플리케이션에 이러한 더 이상 사용되지 않는 DLL을 배포할 수 있습니다. 이러한 구성 요소에 대한 자세한 배경은 이 블로그 게시물을 참조하세요.
DirectX를 사용하는 대부분의 타이틀은 실제로는 이 ‘기존 DirectX SDK’ 프레임워크 패키지 종속성이 필요하지 않습니다.
또는, 기존 DirectX SDK 종속성을 제거하도록 애플리케이션을 업데이트할 수 있습니다.
  • XAudio2의 경우 가장 좋은 옵션은 Windows 10 SDK의 헤더를 사용하여 XAudio 2.9로 업그레이드하는 것입니다. Windows 10에서 XAudio 2.9, X3DAudio, XAPOFX는 모두 운영 체제에 내장되어 있습니다. Store가 아닌 버전의 경우, Windows 7 SP1 이상에서 XAudio2.9를 지원하는 간단한 애플리케이션 로컬 재배포 가능 파일이 있는 XAudio2Redist를 사용할 수 있습니다. 이는 배포를 단순화하고 기존 XAudio 2.7의 여러 알려진 버그를 해결합니다. Microsoft Docs를 참조하세요.
  • XInput의 경우 가장 좋은 옵션은 Windows 10 SDK의 헤더를 사용해 XInput 1.4를 사용하는 것입니다. Windows 10에서 XInput 1.4는 운영 체제에 포함되어 있습니다. Store가 아닌 버전의 경우, Windows Vista까지 거슬러 올라가서 운영 체제에 포함된 XInput 9.1.0을 사용할 수 있습니다. 이 블로그 게시물을 참조하세요.
기존 XInput 1.3의 사용은 알려진 보안 문제가 있으므로 강력히 권장되지 않습니다. 프레임워크 패키지의 버전은 이 문제를 완화하고 SHA-256 코드 서명으로 업데이트되었지만, 원래의 기존 DirectX End-User Runtime 패키지는 변경되지 않았습니다.
  • Direct3D 10(d3dx10)의 경우 가장 좋은 옵션은 Direct3D 11로 업그레이드하는 것입니다. Microsoft Docs를 참조하세요.
  • Direct3D 11(d3dx11)의 경우 Direct3D 11에 대한 기존 D3DX의 다양한 대체품에 대해 이 블로그 게시물을 참조하세요.
오래된 타이틀의 경우, 병렬 라이선스와 함께 D3DX9, D3DX10 및 D3DX11의 2010년 6월 버전을 제공하는 Microsoft.DXSDK.D3DX NuGet 패키지를 사용하는 것도 고려할 수 있습니다. 이러한 재배포 가능 DLL 또한 SHA-256 코드 서명이 되어 있습니다.
  • HLSL 컴파일러(D3DCompiler)의 경우 Windows 10 SDK의 최신 버전을 사용할 수 있습니다. Windows 10에서는 이것이 운영 체제에 포함됩니다. Store가 아닌 버전의 경우, 간단한 애플리케이션 로컬 파일로 게임과 함께 D3DCompiler_47.dll을 포함시킬 수 있습니다. 이 블로그 게시물을 참조하세요.
이 프레임워크 패키지도, 기존 DirectX End-User Redistributable도 DirectX 런타임을 어떤 식으로든 수정하지 않습니다.
예제 MicrosoftGame.config 스니펫:
DirectX 프레임워크 패키지를 개발 또는 테스트 컴퓨터에 설치하는 방법에는 두 가지가 있습니다.
  1. Microsoft 다운로드 사이트에서 다운로드하고 Appx 파일을 두 번 클릭하여 설치합니다(권장). DirectX x86 프레임워크 패키지, DirectX x64 프레임워크 패키지
  2. 실행 앱에서 다음 링크를 입력하여 DirectX 프레임워크 종속성 패키지를 설치하는 DirectX 샘플 앱을 가져옵니다. (참고: 이것은 RETAIL 개발 샌드박스의 컴퓨터에서만 동작하며, x64 플랫폼 컴퓨터에 있는 경우에만 x64 플랫폼 버전이 설치됩니다.): ms-windows-store://pdp/?productid=9MTF6XHMN17Z
DirectX 프레임워크 패키지는 이러한 DLL을 System32 폴더에 설치하지 않습니다. 이들은 런타임에 패키지 애플리케이션의 검색 경로에 있습니다. 명시적 링크를 사용하는 경우, 이러한 기존 DirectX 라이브러리를 로드하기 위해 LoadLibraryEx 플래그 LOAD_LIBRARY_SEARCH_SYSTEM32 또는 LOAD_LIBRARY_SEARCH_APPLICATION_DIR을 사용하지 마세요.
이 프레임워크 패키지의 9.29.1974.0 버전에는 SHA-256 코드 서명된 페이로드 DLL과 XInput 1.3에 대한 보안 수정이 포함되어 있습니다.

Visual Studio C++ 런타임

C/C++ 런타임의 특정 경우에는 기존의 재배포 가능 형태와 프레임워크 패키지 형태가 항상 동일하지는 않습니다. 기존의 비 Microsoft Store 앱은 항상 기존의 재배포 가능 형태를 사용해 왔습니다. 앞서 언급한 설치 프로그램은 필요한 프레임워크 패키지를 다음 Extension SDKs 폴더에 배치합니다. %PROGRAMFILES(X86)%\Microsoft SDKs\Windows Kits\10\ExtensionSDKs 앱의 아키텍처에 해당하는 버전(x86 또는 x64)을 사이드로드해야 합니다. 패키지와 그 프레임워크 종속성을 로컬에서 테스트하려면 애플리케이션이 빌드된 Visual Studio 버전을 식별하고, 해당 APPX 프레임워크 패키지를 사이드로드한 다음 앱을 등록합니다. 자세한 내용은 Microsoft Docs를 참조하세요.

Visual Studio 2012

다음은 Visual Studio 2012 VCLibs 프레임워크 패키지 v11에 대한 예제 매니페스트 항목입니다.
이 프레임워크 패키지를 사이드로드하려면
  • x86:
    1. 프레임워크 패키지를 찾습니다. C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.110\14.0\Appx\Retail\x86\Microsoft.VCLibs.x86.11.00.Desktop.appx
    2. 두 번 클릭하여 설치하거나 다음 Windows PowerShell 명령을 실행합니다. add-appxpackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.110\14.0\Appx\Retail\x86\Microsoft.VCLibs.x86.11.00.Desktop.appx"
  • x64:
    1. 프레임워크 패키지를 찾습니다. C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.110\14.0\Appx\Retail\x64\Microsoft.VCLibs.x64.11.00.Desktop.appx
    2. 두 번 클릭하여 설치하거나 다음 Windows PowerShell 명령을 실행합니다. add-appxpackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.110\14.0\Appx\Retail\x64\Microsoft.VCLibs.x64.11.00.Desktop.appx"

Visual Studio 2013

다음은 Visual Studio 2012 VCLibs 프레임워크 패키지 v12에 대한 예제 매니페스트 항목입니다.
이 프레임워크 패키지를 사이드로드하려면
  • x86:
    1. 프레임워크 패키지를 찾습니다. C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.120\14.0\Appx\Retail\x86\Microsoft.VCLibs.x86.12.00.Desktop.appx
    2. 두 번 클릭하여 설치하거나 다음 Windows PowerShell 명령을 실행합니다. add-appxpackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.110\14.0\Appx\Retail\x86\Microsoft.VCLibs.x86.11.00.Desktop.appx"
  • x64:
    1. 프레임워크 패키지를 찾습니다. C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.120\14.0\Appx\Retail\x64\Microsoft.VCLibs.x64.12.00.Desktop.appx
    2. 두 번 클릭하여 설치하거나 다음 Windows PowerShell 명령을 실행합니다. add-appxpackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop.120\14.0\Appx\Retail\x64\Microsoft.VCLibs.x64.12.00.Desktop.appx"

Visual Studio 2015 - 2022

다음은 Visual Studio 2015 이상 VCLibs 프레임워크 패키지 v14에 대한 예제 매니페스트 항목입니다.
이 프레임워크 패키지를 사이드로드하려면
  • x86:
    1. 프레임워크 패키지를 찾습니다. C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0\Appx\Retail\x86\Microsoft.VCLibs.x86.14.00.Desktop.appx
    2. 두 번 클릭하여 설치하거나 다음 Windows PowerShell 명령을 실행합니다. add-appxpackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0\Appx\Retail\x86\Microsoft.VCLibs.x86.14.00.Desktop.appx"
  • x64:
    1. 프레임워크 패키지를 찾습니다. C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0\Appx\Retail\x64\Microsoft.VCLibs.x64.14.00.Desktop.appx
    2. 두 번 클릭하여 설치하거나 다음 Windows PowerShell 명령을 실행합니다. add-appxpackage "C:\Program Files (x86)\Microsoft SDKs\Windows Kits\10\ExtensionSDKs\Microsoft.VCLibs.Desktop\14.0\Appx\Retail\x64\Microsoft.VCLibs.x64.14.00.Desktop.appx"
VS 2015 Update 3, VS 2017, VS 2019, VS 2022는 모두 동일한 REDIST를 사용하며 VS 2022가 최신 버전입니다. 자세한 내용은 Microsoft Docs를 참조하세요.

로컬 테스트

적절한 매니페스트에 대한 참조를 포함하고 APPX 프레임워크 패키지를 사이드로드한 후, 다음 명령을 사용하여 앱의 느슨한 빌드 버전을 설치합니다. WdApp.exe register loose_build_path 이렇게 하면 앱이 설치되고 적절한 프레임워크를 참조하고 있는지 확인됩니다. 이제 시작 메뉴의 타일에서 앱을 실행하고 앱에 필요한 테스트 및 검증 단계를 수행합니다. 사이드로드 구성에서 테스트를 완료한 후 MSIXVC 패키징 도구를 사용하여 PC용 타이틀 패키징 시작 항목의 지침을 사용하여 MSIXVC 패키지를 만듭니다. 자세한 내용은 Using Visual C++ Runtime in Centennial project 블로그 게시물을 참조하세요.
마지막 수정일 2026년 8월 13일