Visual Studio를 사용하여 Win32 앱 격리 애플리케이션 패키징
이 페이지에서는 Win32 앱 격리를 활용하기 위해 애플리케이션을 패키지하는 데 필요한 모든 것을 다룹니다.
Important
이 기능은 미리 보기 상태입니다. 일부 정보는 상업용으로 출시되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적, 또는 묵시적인 보증을 하지 않습니다.
필수 구성 요소
애플리케이션을 격리된 Win32 앱으로 패키지하려면 다음 필수 구성 요소가 필요합니다.
- Visual Studio 버전 17.10.2 이상
1단계 - Windows 11 SDK 10.0.26100.0(이상)을 포함하여 Visual Studio에 필요한 워크로드 설치
Visual Studio 설치 관리자를 열고 기존 설치를 수정합니다. 워크로드 탭에서 Windows 애플리케이션 개발 상자를 선택합니다(필요에 따라 C++에서 개발을 위해 C++ WinUI 앱 개발 도구 상자 선택). 이 Windows 11 SDK 10.0.26100.0 (이상)도 필요합니다.
2단계 - 앱 프로젝트 만들기
Visual Studio에서 비어 있는 앱, Windows 애플리케이션 패키징 프로젝트로 패키지됨(데스크톱의 WinUI 3) 템플릿을 사용하여 새 C# 또는 C++ 프로젝트를 만듭니다. 이 만들기 를 클릭한 다음 TPV(대상 플랫폼 버전) 및 TPMinV(대상 플랫폼 최소 버전)에 대해 10.0.26100.0 (이상)을 선택합니다.
3단계 - NuGet을 사용하여 Microsoft.Windows.SDK.BuildTools 버전 10.0.26100.1 이상 설치
이 프로젝트 -> NuGet 패키지 관리 로 이동하여 Microsoft.Windows.SDK.BuildTools 버전 10.0.26100.1(이상)을 설치합니다.
4단계 - Packaging.appxmanifest 파일 편집
매니페스트 파일에서 다음을 변경해야 합니다.
참고: 격리된 win32 애플리케이션은 동일한 패키지 내의 다른 애플리케이션 유형과 호환되지 않습니다.
이
xmlns:previewsecurity2="http://schemas.microsoft.com/appx/manifest/preview/windows10/security/2"
가 아직 없는 경우<Package>
요소에 추가합니다.- 이
<Package>
요소의 끝에 있는IgnorableNamespaces
에previewsecurity2
를 추가합니다.
- 이
이
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
가 아직 없는 경우<Package>
요소에 추가합니다.- 이
<Package>
요소의 끝에 있는IgnorableNamespaces
에uap10
를 추가합니다.
- 이
이
<Dependencies>
에서TargetDeviceFamily
를<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.26100.0" MaxVersionTested="10.0.26100.0" />
으로 변경합니다.참고 항목
모든 기능을 최소 빌드에서 사용할 수 있는 것은 아닙니다. 자세한 내용은 릴리스 정보 를 확인하세요.
이
<Application>
에서 기존 entrypoint/trustlevel/runtimebehavior를uap10:TrustLevel="appContainer" previewsecurity2:RuntimeBehavior="appSilo"
로 대체합니다.이
<Application>
확장에서는 부모<Application>
에서 상속된EntryPoints=*
또는Executable=*
을 제거합니다.이
windows.protocol
에 대한 확장 요소에desktop7:Scope="user"
를 추가합니다.참고 항목
기본적으로 앱이 패키지된 Win32이므로 Visual Studio는
<Capabilities>
에<rescap:Capability name="runFullTrust">
를 자동으로 추가합니다. 앱에runFullTrust
기능이 필요하기 때문에 사용자 전역 상태(예:comServer
또는FirewallRules
)에 영향을 줄 수 있는 다른 매니페스트된 확장이 없으면 제거해야 합니다.
5단계 - 앱 패키지 빌드 및 게시
Visual Studio 솔루션을 빌드합니다.
이 앱 패키지 만들기 마법사를 사용하여 앱 패키지를 게시합니다.
앱 패키지를 게시한 후 표시된 출력 위치 에는 MSIX 패키지가 버전별로 게시되는 루트 디렉터리가 표시됩니다. 버전 폴더에서 열어 앱을 설치하기 위한 Install.ps1 파일을 찾습니다.