Empaquetage d'une application avec isolation Win32 avec Visual Studio
Cette page couvre tout ce qui est nécessaire pour empaqueter une application afin de tirer parti de l’isolation des applications Win32.
Important
Cette fonctionnalité est en cours d'évaluation : Certaines informations concernent un produit en préversion qui peut être modifié de manière substantielle avant d'être commercialisé. Microsoft n’offre aucune garantie, expresse ou implicite, concernant les informations fournies ici.
Prérequis nécessaires
Les prérequis suivants sont nécessaires pour empaqueter une application dans une application Win32 isolée :
- Visual Studio version 17.10.2 ou une version supérieure
Étape 1 : Installer les charges de travail requises dans Visual Studio, y compris Windows 11 SDK 10.0.26100.0 (ou supérieur)
Ouvrez le Visual Studio Installer et modifiez l'installation existante. Dans l'onglet Charges de travail, cochez la case Développement d'applications Windows (et, si nécessaire, cochez la case Outils de développement d'applications C++ WinUI pour le développement en C++). Le SDK Windows 11 10.0.26100.0 (ou une version supérieure) est également requis.
Étape 2 : Créez votre projet d'application
Dans Visual Studio, créez un nouveau projet C# ou C++ en utilisant le modèle Application vide, empaquetée avec le projet de packaging d'application Windows (WinUI 3 sur Desktop). Cliquez sur Créer, puis sélectionnez 10.0.26100.0 (ou une version plus récente) pour la version de la plate-forme cible (TPV) et la version minimale de la plate-forme cible (TPMinV).
Étape 3 : Installez Microsoft.Windows.SDK.BuildTools version 10.0.26100.1 ou une version ultérieure avec NuGet
Allez dans Projet -> Gérer les packages NuGet pour installer Microsoft.Windows.SDK.BuildTools version 10.0.26100.1 (ou une version ultérieure).
Étape 4 : Modifier le fichier Packaging.appxmanifest
Dans le fichier manifest, les modifications suivantes devront être apportées :
Remarque : Les applications Win32 isolées ne sont pas compatibles avec d'autres types d'applications dans le même package.
Ajoutez
xmlns:previewsecurity2="http://schemas.microsoft.com/appx/manifest/preview/windows10/security/2"
à l'élément<Package>
s'il n'y est pas déjà.- Ajoutez
previewsecurity2
àIgnorableNamespaces
à la fin de l'élément<Package>
.
- Ajoutez
Ajoutez
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
à l'élément<Package>
s'il n'y est pas déjà.- Ajoutez
uap10
àIgnorableNamespaces
à la fin de l'élément<Package>
.
- Ajoutez
Dans
<Dependencies>
changezTargetDeviceFamily
en<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.26100.0" MaxVersionTested="10.0.26100.0" />
.Remarque
Toutes les fonctionnalités ne sont pas disponibles dans la build minimale, veuillez consulter les notes de version pour plus d'informations détaillées.
Dans
<Application>
, remplacez toute entrée existante de point d'entrée/niveau de confiance/comportement d'exécution paruap10:TrustLevel="appContainer" previewsecurity2:RuntimeBehavior="appSilo"
.Dans les extensions
<Application>
, supprimez toutEntryPoints=*
ouExecutable=*
car ils sont hérités de l'élément parent<Application>
.Ajoutez
desktop7:Scope="user"
à l'élément extension pourwindows.protocol
.Remarque
Par défaut, Visual Studio ajoutera automatiquement
<rescap:Capability name="runFullTrust">
à<Capabilities>
en raison du fait que l'application est une Win32 empaquetée. Cela doit être supprimé à moins que l'application ait d'autres extensions manifestées qui peuvent affecter l'état global de l'utilisateur, telles quecomServer
ouFirewallRules
, car elles nécessitent la capacitérunFullTrust
.
Étape 5 : Créer et publier des packages d'application
Créez la solution Visual Studio.
Publiez le package d'application en utilisant l'assistant Créer des packages d'application....
Après la publication des packages d'application, l'emplacement de sortie affiché montre le répertoire racine où le package MSIX est publié par version. Ouvrez le dossier de version pour trouver le fichier Install.ps1 pour installer l'application.
Rubriques connexes
Aperçu de l'isolation des applications