Choisir une version UWP

Chaque version de Windows 10 et Windows 11 fournit de nouvelles fonctionnalités améliorées pour la plateforme UWP. Lors de la création d’applications UWP dans Microsoft Visual Studio, vous pouvez choisir la version à cibler. Pour les projets utilisant .NET Standard 2.0, la Version minimale doit être définie sur la build 16299 ou version ultérieure.

Avertissement

Les projets UWP créés dans les versions courantes de Visual Studio ne peuvent pas être ouverts dans Visual Studio 2015.

Le tableau suivant décrit les versions de Windows 10 et Windows 11 disponibles. Ce tableau s’applique uniquement à la création d’applications UWP, qui sont uniquement prises en charge sur Windows 10 et Windows 11. Vous ne pouvez pas développer des applications UWP pour les versions antérieures de Windows, et vous devez installer la version appropriée du Kit de développement (SDK) afin de cibler cette version.

Version Description
Build 19041 (version 2004) Il s’agit de la dernière version de Windows 10, publiée en mai 2020. Voici les fonctionnalités phares de cette version :
* WSL2 : le sous-système Windows pour Linux a été mis à jour. Il présente un nouveau modèle d’architecture et exécute maintenant un véritable noyau Linux sur Windows. Pour en savoir plus, consultez À propos de WSL 2.
* MSIX : les nouvelles fonctionnalités fournies dans Windows permettent une prise en charge supplémentaire du format des packages d’applications MSIX modernes, y compris la possibilité de créer des packages incluant des services, la création d’applications hébergées et la possibilité d’inclure des fonctionnalités qui nécessitent l’identité des packages dans des applications non packagées. En savoir plus grâce à la documentation MSIX.
Pour plus d’informations sur ces fonctionnalités et les nombreuses autres fonctionnalités ajoutées dans cette version de Windows, visitez le Centre de développement ou consultez la page Nouveautés de Windows 10 pour les développeurs
Build 18362 (version 1903) Cette version de Windows 10 a été publiée en avril 2019. Voici quelques fonctionnalités phares de cette version :
* XAML Islands :Windows 10 vous permet désormais d’utiliser les contrôles UWP dans les applications de bureau autres qu’UWP. Si vous développez pour WPF, Windows Forms ou C++ Win32, découvrez comment ajouter les dernières fonctionnalités de l’interface utilisateur de Windows 10 à votre application existante.
* Sous-système Windows pour Linux : Vous pouvez désormais accéder aux fichiers Linux directement à partir de Windows et utiliser plusieurs nouvelles options de ligne de commande. Consultez la dernière version disponible dans À propos de WSL.
Pour plus d’informations sur ces fonctionnalités et de nombreuses autres fonctionnalités ajoutées dans cette version de Windows, consultez Nouveautés de la build 18362
Build 17763 (version 1809) Cette version de Windows10 a été publiée en octobre 2018. Notez que vous devez utiliser Visual Studio 2017 ou Visual Studio 2019 pour cibler cette version de Windows. Voici quelques fonctionnalités phares de cette version :
* Windows Machine Learning : Windows Machine Learning vient d’être officiellement lancé, avec des fonctionnalités telles qu’une évaluation et une prise en charge plus rapides des modèles Machine Learning de pointe. Pour en savoir plus sur la plateforme, voir Windows Machine Learning.
* Fluent Design : De nouvelles fonctionnalités comme la barre de menus, le menu volant de barre de commandes et des animations de propriété XAML, ont été ajoutées à Windows 10. Voir les toutes dernières sur la vue d’ensemble de Fluent Design.
Pour plus d’informations sur ces fonctionnalités et de nombreuses autres fonctionnalités ajoutées dans cette version de Windows, consultez Nouveautés de la build 17763
Build 17134 (version 1803) Cette version de Windows 10 a été publiée en avril 2018. Notez que vous devez utiliser Visual Studio 2017 ou Visual Studio 2019 pour cibler cette version de Windows. Voici quelques fonctionnalités phares de cette version :
* Fluent Design : de nouvelles fonctionnalités telles que l’arborescence, l’option Balayer pour actualiser et la vue de navigation, ont été ajoutées à Windows 10. Voir les toutes dernières sur la vue d’ensemble de Fluent Design.
* Applications de console UWP : vous pouvez désormais écrire des applications de console UWP en C++/WinRT ou /CX qui s’exécutent dans une fenêtre de console, telle qu’une fenêtre de console DOS ou PowerShell.
Pour plus d’informations sur ces fonctionnalités et de nombreuses autres fonctionnalités ajoutées dans cette version de Windows, consultez Nouveautés de la build 17134
Build 16299 (Mise à jour Créateurs en automne, version 1709) Cette version de Windows 10 a été publiée en octobre 2017. Notez que vous devez utiliser Visual Studio 2017 ou Visual Studio 2019 pour cibler cette version de Windows. Voici quelques fonctionnalités phares de cette version :
* .NET Standard 2.0 : profitez des nombreuses API .NET pour incorporer vos packages NuGet favoris et vos bibliothèques tierces dans .NET Standard. Obtenez plus d’informations et explorez la documentation ici. Vous devez définir votre version minimale sur la build 16299 pour accéder à ces nouvelles API.
* Fluent Design : Utilisez la lumière, la profondeur, la perspective et le mouvement pour améliorer votre application et aider les utilisateurs à se concentrer sur les éléments d’interface utilisateur importants.
* XAML conditionnel : Définissez facilement des propriétés et instanciez des objets basés sur la présence d’une API lors de l’exécution, afin de permettre à vos applications de s’exécuter de façon fluide sur tous les appareils et toutes les versions.
Pour plus d’informations sur ces fonctionnalités et de nombreuses autres fonctionnalités ajoutées dans cette version de Windows, consultez Nouveautés de Windows 10 pour les développeurs
Build 15063 (Mise à jour Créateurs, version 1703) Cette version de Windows 10 a été publiée en mars 2017. Notez que vous devez utiliser Visual Studio 2017 ou Visual Studio 2019 pour cibler cette version de Windows. Voici quelques fonctionnalités phares de cette version :
* Ink Analysis : Windows Ink peut désormais classer les différents traits d’encre, selon qu’il s’agit de traits d’écriture ou de dessin, ainsi que les textes, formes et structures de disposition basiques reconnues.
* API Windows.Ui.Composition : combinez et appliquez aisément des animations dans votre application.
* Modification dynamique : Modifiez le code XAML pendant que votre application est en cours d’exécution et constatez les modifications en temps réel.
Pour plus d’informations sur ces fonctionnalités et de nombreuses autres fonctionnalités ajoutées dans cette version de Windows, consultez Nouveautés de la build 15063
Build 14393 (mise à jour anniversaire, version 1607) Cette version de Windows 10 a été publiée en juillet 2016. Voici quelques fonctionnalités phares de cette version :
* Windows Ink : nouveaux contrôles InkCanvas et InkToolbar.
* API Cortana : les nouvelles actions de Cortana permettent d’intégrer la prise en charge de Cortana à des fonctions spécifiques de votre application.
* Windows Hello : Microsoft Edge prend désormais en charge Windows Hello, ce qui donne aux développeurs web l’accès à l’authentification biométrique.
Pour plus d’informations sur ces fonctionnalités et de nombreuses autres fonctionnalités ajoutées dans cette version de Windows, consultez Nouveautés de la build 14393
Build 10586 (mise à jour de novembre, version 1511) Cette version de Windows 10 a été publiée en novembre 2015. Les fonctionnalités phares comprennent l’introduction des API ORTC (Object Real-Time Communications) pour la communication vidéo dans Microsoft Edge et des API fournisseurs permettant aux applications d’utiliser l’authentification faciale Windows Hello. Plus d’informations sur les fonctionnalités introduites dans cette version.
Build 10240 (Windows 10, version 1507) Il s’agit de la version initiale de Windows 10 publiée en juillet 2015. Plus d’informations sur les fonctionnalités introduites dans cette version.

Nous recommandons vivement aux nouveaux développeurs et aux développeurs qui écrivent du code pour le grand public de toujours utiliser la dernière version de Windows (19041). Les développeurs écrivant des applications d’entreprise doivent sérieusement envisager de prendre en charge une version minimale antérieure.

Qu’est-ce qui différencie chaque version UWP ?

Les API nouvelles et modifiées pour UWP sont disponibles dans toutes les versions successives de Windows 10 et Windows 11. Pour savoir quelles fonctionnalités ont été ajoutées dans quelle version, consultez Nouveautés pour les développeurs dans Windows 10/11.

Pour consulter des rubriques de référence qui énumèrent toutes les familles d’appareils et leurs versions, ainsi que les contrats d’API et leurs versions, consultez Familles d’appareils et Contrats d’API.

Disponibilité de l’API .NET dans les versions UWP

UWP prend en charge un sous-ensemble limité d’API .NET, disponibles quelle que soit la Version cible ou la Version minimale de votre projet. Cette page fournit des informations complémentaires sur les types disponibles.

Si vous souhaitez créer des bibliothèques multiplateformes réutilisables, .NET Standard est prise en charge sur UWP. Le documentation .NET Standard fournit des informations sur les spécifications .NET Standard prises en charge dans les différentes versions UWP.

Si vous développez une application de bureau, consultez plutôt Versions et dépendances de .NET Framework pour en savoir plus sur la disponibilité de .NET Framework.

Choisir la version à utiliser pour votre application

Dans la boîte de dialogue Nouveau projet Windows universel de Visual Studio, vous pouvez choisir une version pour Version cible et pour Version minimale. En outre, vous pouvez modifier la Version cible et la Version minimale de votre application UWP dans la section Application des Propriétés de l’application.

  • Version cible. Version de Windows 10 ou Windows 11 sur laquelle votre application est censée s’exécuter. Définit le paramètre TargetPlatformVersion de votre fichier projet. Détermine également la valeur de l’attribut TargetDeviceFamily@MaxVersionTested dans le manifeste de votre package d’application. La valeur que vous choisissez spécifie la version de la plateforme UWP ciblée par votre projet et par conséquent, l’ensemble d’API disponibles pour votre application. Nous vous recommandons donc de choisir la version la plus récente. Pour plus d’informations sur le manifeste de votre package d’application et pour obtenir des recommandations sur la configuration manuelle de TargetDeviceFamily, voir TargetDeviceFamily.
  • Version minimale. La version la plus ancienne de Windows 10 ou Windows 11 était nécessaire pour prendre en charge les fonctions de base de votre application. Définit le paramètre TargetPlatformMinVersion de votre fichier projet. Détermine également la valeur de l’attribut TargetDeviceFamily@MinVersion dans le manifeste de votre package d’application. La valeur que vous choisissez spécifie la version minimale de la plateforme UWP avec laquelle votre projet peut fonctionner.

Sachez que vous déclarez que votre application fonctionne sur n’importe quelle version de Windows entre la Version minimale et la Version cible. Si ces deux versions sont les mêmes, aucune action de votre part n’est nécessaire. S’ils sont différents, voici quelques éléments à prendre en compte.

  • Dans votre code, vous pouvez appeler librement (autrement dit, sans contrôles conditionnels) toute API existant dans la version spécifiée par Version minimale.
  • Veillez à tester votre code sur un appareil exécutant la Version minimale pour vous assurer qu’il fonctionne sans avoir besoin d’API présentes uniquement dans la Version cible.
  • La valeur de Version cible permet d’identifier toutes les références (contrat winmds) utilisées pour compiler votre projet. Mais ces références vous permettront de compiler votre code avec des appels à des API qui n’existeront pas nécessairement sur les appareils que vous avez déclaré prendre en charge (via Version minimale). Par conséquent, toute API introduite après la Version minimale doit être appelée via un code adaptatif. Pour plus d’informations sur le code adaptatif, voir Code adaptatif de version.