Association d’un pilote à une application plateforme Windows universelle (UWP)

À compter de Windows 10 version 1709, vous pouvez spécifier qu’une application plateforme Windows universelle (UWP) ne doit se charger que si un pilote spécifique est présent. Lorsque vous utilisez cette option, le Microsoft Store offre à chaque utilisateur la version la plus récente de l’application qui fonctionne avec la version installée du pilote sur l’ordinateur de cet utilisateur.

L’application peut limiter davantage le chargement vers une version ou une date de pilote particulière. Cette rubrique décrit les étapes requises dans l’application et le pilote pour créer une telle exigence.

Notes

L’application et le pilote doivent déclarer la dépendance vis-à-vis de l’application (HSA).

Étapes de l’application

Pour charger une application UWP uniquement lorsqu’un pilote spécifique est présent, ajoutez deux éléments XML au fichier XML manifeste (.appx) de l’application :

En particulier, utilisez ces éléments pour spécifier au moins une dépendance de pilote contenant au moins une contrainte de pilote. Pour plus d’informations sur l’utilisation de ces éléments, consultez les pages de référence liées à ci-dessus, y compris des exemples.

Notes

Les builds de débogage dans les versions antérieures de Visual Studio peuvent placer les éléments pour les <PackageDependency> dépendances de débogage après <uap5:DriverDependency>, ce qui entraîne l’échec de la validation du manifeste par rapport au schéma. Pour résoudre le problème, mettez à jour Visual Studio vers la version 16.11.5 ou plus récente.

Étapes du pilote

Ensuite, procédez comme suit dans le fichier INF du pilote :

  1. Spécifiez la directive INF AddSoftware.
  2. Définissez l’entrée SoftwareType sur 2.
  3. Indiquez un nom de famille de packages (PFN) dans l’entrée SoftwareID .

En plus de faire correspondre les versions d’application et de pilote les plus récentes, le système tente également de faire correspondre les versions précédentes de l’application et du pilote. Par exemple, si la version 2 de l’application spécifie la version minimale du pilote 2 et que la version 1 de l’application spécifie la version minimale du pilote 1, un système qui a la version de pilote 1 charge l’application version 1.

Voir aussi