Référence du schéma du modèle d’application pour UE-V (Windows 10)

User Experience Virtualization (UE-V) utilise des modèles d’emplacement de paramètres XML pour définir les paramètres d’application de bureau et les paramètres Windows qui sont capturés et appliqués par UE-V. UE-V inclut un ensemble de modèles d’emplacement de paramètres par défaut. Vous pouvez également créer des modèles d’emplacement de paramètres personnalisés avec le générateur de modèles UE-V.

Un utilisateur avancé peut personnaliser le fichier XML pour un modèle d’emplacement de paramètres. Cette rubrique décrit en détail la structure XML des modèles d’emplacement des paramètres UE-V et fournit des instructions pour la modification de ces fichiers.

Référence du schéma du modèle d’application UE-V

Cette section détaille la structure XML du modèle d’emplacement des paramètres UE-V et fournit des instructions pour modifier ce fichier.

Dans cette section

Déclaration XML et attribut de codage

Obligatoire : TrueType : chaîne

La déclaration XML doit spécifier l’attribut XML version 1.0 (< ?xml version="1.0 »>). Les modèles d’emplacement des paramètres créés par le générateur de modèles UE-V sont enregistrés en encodage UTF-8, bien que l’encodage ne soit pas explicitement spécifié. Nous vous recommandons d’inclure l’attribut encoding="UTF-8 » dans cet élément comme bonne pratique. Tous les modèles inclus avec le produit spécifient également cette étiquette (consultez les documents dans %ProgramFiles %\Microsoft User Experience Virtualization\Templates pour référence). Par exemple :

<?xml version="1.0" encoding="UTF-8"?>

Espace de noms et élément racine

Obligatoire : TrueType : chaîne

UE-V utilise l’espace de https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate noms pour toutes les applications. SettingsLocationTemplate est l’élément racine et contient tous les autres éléments. Référencez SettingsLocationTemplate dans tous les modèles utilisant cette balise :

<SettingsLocationTemplate xmlns='https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate'>

Types de données

Ces types de données sont ceux du schéma du modèle d’application UE-V.

GUID (GUID ) Le GUID décrit une expression régulière d’identificateur global unique standard sous la forme « \{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\} ». Ce GUID est utilisé dans l’élément Filesetting\Root\KnownFolder pour vérifier la mise en forme des dossiers connus.

FilenameString FilenameString fait référence au nom de fichier d’un processus à surveiller. Ses valeurs sont limitées par l’expression régulière [^\\\ ?\*\|<>/ :]+, (c’est-à-dire qu’ils ne peuvent pas contenir de barres obliques inverses, d’astérisque ou de point d’interrogation, de carte caractères génériques, de barre verticale, de signe supérieur ou inférieur à, de barres obliques ou de deux-points).

IDString IDString fait référence à la valeur d’ID des éléments d’application, SettingsLocationTemplate et Common elements (utilisé pour décrire les suites d’applications qui partagent des paramètres communs). Il est limité par la même expression régulière que FilenameString ([^\\\ ?\*\|<>/:]+).

Version de modèle TemplateVersion est un nombre entier utilisé pour décrire la révision du modèle d’emplacement des paramètres. Sa valeur peut varier de 0 à 2147483647.

Vide Vide fait référence à une valeur null. Ce type de données est utilisé dans Process\ShellProcess pour indiquer qu’il n’y a aucun processus à surveiller. Cette valeur ne doit être utilisée dans aucun modèle d’application.

Auteur Le type de données Auteur est un type complexe qui identifie l’auteur d’un modèle. Il contient deux éléments enfants : Nom et Email. Dans le type de données Auteur, l’élément Nom est obligatoire tandis que l’élément Email est facultatif. Ce type est décrit plus en détail sous l’élément SettingsLocationTemplate.

Plage Range définit une classe entière composée de deux éléments enfants : Minimum et Maximum. Ce type de données est implémenté dans le type de données ProcessVersion. Si elles sont spécifiées, les valeurs minimale et maximale doivent être incluses.

Version de processus ProcessVersion définit un type avec quatre éléments enfants : Majeur, Mineur, Build et Patch. Ce type de données est utilisé par l’élément Process pour remplir ses valeurs ProductVersion et FileVersion. Les données de ce type sont une valeur de plage. L’élément Enfant majeur est obligatoire et les autres sont facultatifs.

L’architecture L’architecture énumère deux valeurs possibles : Win32 et Win64. Ces valeurs sont utilisées pour spécifier l’architecture du processus.

Processus Le type de données Processus est un conteneur utilisé pour décrire les processus à superviser par UE-V. Il contient six éléments enfants : Filename, Architecture, ProductName, FileDescription, ProductVersion et FileVersion. Ce tableau détaille le type de données respectif de chaque élément :

Élément Type de données Mandatory
Nom de fichier FilenameString Vrai
Architecture Architecture Faux
ProductName Chaîne Faux
Description du fichier Chaîne Faux
Productversion Version de processus Faux
Version de fichier Version de processus Faux

Processus Le type de données Processus représente un conteneur pour une collection d’un ou plusieurs éléments de processus. Deux éléments enfants sont pris en charge dans le type de séquence Processus : Process et ShellProcess. Process est un élément de type Process et ShellProcess est de type Empty. Au moins un élément doit être identifié dans la séquence.

Chemin d’accès Le chemin d’accès est utilisé par RegistrySetting et FileSetting pour faire référence aux chemins d’accès au Registre et aux fichiers. Cet élément prend en charge deux attributs facultatifs : Recursive et DeleteIfNotFound. Les deux valeurs sont définies sur default="False ».

Récursive indique que le chemin d’accès et tous les sous-dossiers sont inclus pour les paramètres de fichier ou que toutes les clés de Registre enfants sont incluses pour les paramètres de Registre. Dans les deux cas, tous les éléments du niveau actuel sont inclus dans les données saisies. Dans le cas d’un objet FileSettings, tous les fichiers du dossier spécifié sont inclus dans les données capturées par UE-V, mais pas les dossiers. Pour les chemins d’accès de Registre, toutes les valeurs du chemin d’accès actuel sont capturées, mais pas les clés de Registre enfants. Dans les deux cas, il faut veiller à ne pas capturer de grands ensembles de données ou un grand nombre d’éléments.

L’attribut DeleteIfNotFound supprime le paramètre des données de chemin de stockage des paramètres de l’utilisateur. Cette suppression peut être utile dans les cas où la suppression de ces paramètres du package permet d’économiser une grande quantité d’espace disque sur le serveur de fichiers du chemin de stockage des paramètres.

Masque de fichier FileMask spécifie uniquement certains types de fichiers pour le dossier défini par Path. Par exemple, Path peut être C:\users\username\files et FileMask peut inclure *.txt uniquement des fichiers texte.

Paramètre de Registre RegistrySetting représente un conteneur pour les clés et les valeurs de Registre et le comportement souhaité associé de la part du service UE-V. Quatre éléments enfants sont définis dans ce type : Chemin, Nom, Exclure et une séquence des valeurs Chemin et Nom.

FileSetting FileSetting contient des paramètres associés à des fichiers et des chemins d’accès aux fichiers. Quatre éléments enfants sont définis : Racine, Chemin d’accès, FileMask et Exclure. La racine est obligatoire et les autres sont facultatives.

Paramètres Settings est un conteneur pour tous les paramètres qui s’appliquent à un modèle particulier. Il contient des instances des paramètres Registre, Fichier, SystemParameter et CustomAction décrits précédemment. En outre, il peut également contenir les éléments enfants suivants avec des comportements décrits :

Élément Description
Asynchrone Les packages de paramètres asynchrones sont appliqués sans bloquer le démarrage de l’application, de sorte que le démarrage de l’application se poursuit pendant que les paramètres sont toujours en cours d’application. Cet élément est utile pour les paramètres qui peuvent être appliqués de manière asynchrone, tels que les paramètres obtenus/définis via une API, comme SystemParameterSetting.
PreventOverlappingSynchronization Par défaut, UE-V enregistre uniquement les paramètres d’une application lorsque la dernière instance d’une application utilisant le modèle est fermée. Lorsque cet élément est défini sur « false », UE-V exporte les paramètres même si d’autres instances d’une application sont en cours d’exécution. Les modèles adaptés, c’est-à-dire les modèles qui incluent une section Élément commun, fournis avec UE-V utilisent cet indicateur pour activer l’exportation des paramètres partagés à chaque fermeture de l’application, tout en empêchant l’exportation des paramètres spécifiques à l’application jusqu’à la fermeture de la dernière instance.
AlwaysApplySettings Ce paramètre force l’application d’un package de paramètres importé, même s’il n’existe aucune différence entre le package et l’état actuel de l’application. Ce paramètre ne doit être utilisé que dans des cas particuliers, car il peut ralentir l’importation des paramètres.

Élément Name

Obligatoire : TrueType : chaîne

Name spécifie un nom unique pour le modèle d’emplacement des paramètres. Ce nom est utilisé à des fins d’affichage lors de la référence du modèle dans WMI, PowerShell, l’observateur d’événements et les journaux de débogage. En général, évitez de faire référence aux informations de version, car ce référencement peut être objecté à partir de l’élément ProductVersion. Par exemple, spécifiez <Name>My Application</Name> au lieu de <Name>My Application 1.1</Name>.

Remarque

UE-V ne référence pas de DTD externes, il n’est donc pas possible d’utiliser des entités nommées dans un modèle d’emplacement de paramètres. Par exemple, ne pas l’utiliser ® pour faire référence au signe ® de marque déposé. Utilisez plutôt des références numérotées canoniques pour inclure ces types de caractères spéciaux, par exemple, ® pour le ® caractère. Cette règle s’applique à toutes les valeurs de chaîne de ce document.

Consultez http://www.w3.org/TR/xhtml1/dtds.html la section pour obtenir la liste complète des entités de caractère. Les documents codés en UTF-8 peuvent inclure directement les caractères Unicode. L’enregistrement de modèles via le générateur de modèles UE-V convertit automatiquement les entités de caractères en leurs représentations Unicode.

Élément ID

Obligatoire : TrueType : chaîne

L’ID remplit un identificateur unique pour un modèle particulier. Cette balise devient l’identificateur principal que le service UE-V utilise pour référencer le modèle au moment de l’exécution (voir par exemple la sortie des applets de commande Get-UevTemplate et PowerShell Get-UevTemplateProgram). Par convention, cette balise ne doit pas contenir d’espaces, ce qui simplifie les scripts. Les numéros de version des applications doivent être spécifiés dans cet élément pour faciliter l’identification du modèle, par <ID>MicrosoftOffice2016Win64</ID>exemple .

Élément de version

Obligatoire : TrueType : EntierValeur minimale : 0Valeur maximale : 2147483647

La version identifie la version du modèle d’emplacement des paramètres pour le suivi administratif des modifications. Le générateur de modèles UE-V incrémente automatiquement ce nombre d’un chaque fois que le modèle est enregistré. Notez que ce champ doit être un nombre entier entier ; les valeurs fractionnaires, par exemple <Version>2.5</Version> , ne sont pas autorisées.

Astuce

Vous pouvez enregistrer des notes sur les changements de version à l’aide de balises <!-- -->de commentaire XML, par exemple :

<!--
   Version History

   Version 1 Jul 05, 2012 Initial template created by Generator - Denise@Contoso.com
   Version 2 Jul 31, 2012 Added support for app.exe v2.1.3 - Mark@Contoso.com
   Version 3 Jan 01, 2013 Added font settings support - Mark@Contoso.com
   Version 4 Jan 31, 2013 Added support for plugin settings - Tony@Contoso.com
 -->
<Version>4</Version>

Important

Cette valeur est interrogée pour déterminer si une nouvelle version d’un modèle doit être appliquée à un modèle existant dans les cas suivants :

  • Lors de l’exécution de la tâche de mise à jour automatique de modèle planifiée
  • Lors de l’exécution de l’applet de commande PowerShell Update-UevTemplate
  • Lorsque la méthode microsoft\uev :SettingsLocationTemplate Update est appelée via WMI

Élément d’auteur

Obligatoire : fauxType : chaîne

L’auteur identifie le créateur du modèle d’emplacement des paramètres. Deux éléments enfants facultatifs sont pris en charge : Nom et Email. Les deux attributs sont facultatifs, mais, si l’élément enfant Email est spécifié, il doit être accompagné de l’élément Name. Auteur fait référence au nom complet du contact pour le modèle d’emplacement des paramètres, et l’adresse e-mail doit faire référence à une adresse e-mail de l’auteur. Nous vous recommandons d’inclure ces informations dans les modèles publiés publiquement.

Processus et élément de processus

Obligatoire : TrueType : Élément

Les processus contiennent au moins un <Process> élément, qui à son tour contient les éléments enfants suivants : Filename, Architecture, ProductName, FileDescription, ProductVersion et FileVersion. L’élément enfant Filename est obligatoire et les autres sont facultatifs. Un élément entièrement rempli contient des balises similaires à cet exemple :

<Process>
  <Filename>MyApplication.exe</Filename>
  <Architecture>Win64</Architecture>
  <ProductName> MyApplication </ProductName>
  <FileDescription>MyApplication.exe</FileDescription>
  <ProductVersion>
    <Major Minimum="2" Maximum="2" />
    <Minor Minimum="0" Maximum="0" />
    <Build Minimum="0" Maximum="0" />
    <Patch Minimum="5" Maximum="5" />
  </ProductVersion>
  <FileVersion>
    <Major Minimum="2" Maximum="2" />
    <Minor Minimum="0" Maximum="0" />
    <Build Minimum="0" Maximum="0" />
    <Patch Minimum="5" Maximum="5" />
  </FileVersion>
</Process>

Nom de fichier

Obligatoire : TrueType : chaîne

Le nom de fichier fait référence au nom de fichier réel de l’exécutable tel qu’il apparaît dans le système de fichiers. Cet élément spécifie le critère principal qu’UE-V utilise pour évaluer si un modèle s’applique ou non à un processus. Cet élément doit être spécifié dans le XML du modèle d’emplacement des paramètres.

Les noms de fichiers valides ne doivent pas correspondre à l’expression régulière [^\\\ ?\*\|<>/ :]+, c’est-à-dire qu’ils ne peuvent pas contenir de barres obliques inverses, d’astérisque ou de point d’interrogation carte caractères génériques, de barre verticale, de signe supérieur ou inférieur à, de barre oblique ou de deux-points (les caractères \ ? * | <> / ou :).

Astuce

Pour tester une chaîne par rapport à cette expression régulière, utilisez une fenêtre de commande PowerShell et remplacez YourFileName par le nom de votre exécutable :

"YourFileName.exe" -match "[\\\?\*\|<>/:]+"

La valeur True indique que la chaîne contient des caractères non autorisés. Voici quelques exemples de valeurs illégales :

  • \\server\share\program.exe
  • Programme*.exe
  • Pro ?ram.exe
  • Programme<1>.exe

Remarque

Le générateur de modèles UE-V encode les caractères supérieur et inférieur à comme > et < respectivement.

Dans de rares cas, la valeur FileName n’inclut pas nécessairement l’extension .exe, mais elle doit être spécifiée dans le cadre de la valeur. Par exemple, <Filename>MyApplication.exe</Filename> doit être spécifié à la place de <Filename>MyApplication</Filename>. Le deuxième exemple n’appliquera pas le modèle au processus si le nom réel du fichier exécutable est « MyApplication.exe ».

Architecture

Obligatoire : fauxType : architecture (chaîne)

Architecture fait référence à l’architecture du processeur pour laquelle le fichier exécutable cible a été compilé. Les valeurs valides sont Win32 pour les applications 32 bits ou Win64 pour les applications 64 bits. Si elle est présente, cette balise limite l’applicabilité du modèle d’emplacement des paramètres à une architecture d’application particulière. Pour obtenir un exemple de cette restriction d’applicabilité, comparez les fichiers MicrosoftOffice2016Win32.xml Microsoft User Experience Virtualization\templates\ % ProgramFiles, et MicrosoftOffice2016Win64.xml inclus dans UE-V. Cette restriction d’applicabilité est utile lorsque des chemins relatifs changent entre différentes versions d’un exécutable ou si des paramètres ont été ajoutés ou supprimés lors du passage d’une architecture de processeur à une autre.

Si cet élément est absent, le modèle d’emplacement des paramètres ignore l’architecture du processus et s’applique aux processus 32 bits et 64 bits si le nom de fichier et d’autres attributs s’appliquent.

Remarque

UE-V ne prend pas en charge les processeurs ARM dans cette version.

ProductName

Obligatoire : fauxType : chaîne

ProductName est un élément facultatif utilisé pour identifier un produit à des fins administratives ou de reporting. ProductName diffère de Filename en ce qu’il n’existe aucune restriction d’expression régulière sur sa valeur. Cette flexibilité permet de décrire plus facilement un processus où le nom de l’exécutable n’est pas évident. Par exemple :

<Process>
  <Filename>MyApplication.exe</Filename>
  <ProductName>My Application 6.x by Contoso.com</ProductName>
  <ProductVersion>
    <Major Minimum="6" Maximum="6" />
  </ProductVersion>
</Process>

Description du fichier

Obligatoire : fauxType : chaîne

FileDescription est une balise facultative qui permet une description administrative du fichier exécutable. Cette balise est un champ de texte libre qui peut être utile pour distinguer plusieurs exécutables au sein d’un package logiciel où il est nécessaire d’identifier la fonction de l’exécutable.

Par exemple, dans une application adaptée, il peut être utile de fournir des rappels sur la fonction de deux exécutables (MyApplication.exe et MyApplicationHelper.exe), comme illustré ici :

<Processes>

   <Process>
      <Filename>MyApplication.exe</Filename>
      <FileDescription>My Application Main Engine</ FileDescription>
      <ProductVersion>
        <Major Minimum="6" Maximum="6" />
      </ProductVersion>
    </Process>
    <Process>
      <Filename>MyApplicationHelper.exe</Filename>
      <FileDescription>My Application Background Process Executable</FileDescription>
      <ProductVersion>
        <Major Minimum="6" Maximum="6" />
      </ProductVersion>
    </Process>
</Processes>

Productversion

Obligatoire : fauxType : chaîne

ProductVersion fait référence aux versions de produit principale et mineure d’un fichier, ainsi qu’à un niveau de build et de correctif. ProductVersion est un élément facultatif, mais s’il est spécifié, il doit contenir au moins l’élément enfant majeur. La valeur doit exprimer une plage sous la forme Minimum="X », Maximum="Y », où X et Y sont des entiers. Les valeurs Minimum et Maximum peuvent être identiques.

Les éléments de version du produit et du fichier peuvent ne pas être spécifiés. Cela rend le modèle « indépendant de la version », ce qui signifie que le modèle s’appliquera à toutes les versions de l’exécutable spécifié.

Exemple 1 :

La version du produit : 1.0 spécifiée dans le générateur de modèles UE-V produit le XML suivant :

<ProductVersion>
  <Major Minimum="1" Maximum="1" />
  <Minor Minimum="0" Maximum="0" />
</ProductVersion>

Exemple 2 :

La version de fichier : 5.0.2.1000 spécifiée dans le générateur de modèles UE-V produit le XML suivant :

<FileVersion>
  <Major Minimum="5" Maximum="5" />
  <Minor Minimum="0" Maximum="0" />
  <Build Minimum="2" Maximum="2" />
  <Patch Minimum="1000" Maximum="1000" />
</FileVersion>

Exemple incorrect 1 : plage incomplète :

Seul l’attribut Minimum est présent. Le maximum doit également être inclus dans une plage.

<ProductVersion>
  <Major Minimum="2" />
</ProductVersion>

Exemple incorrect 2 - Mineur spécifié sans élément majeur :

Seul l’élément mineur est présent. Major doit également être inclus.

<ProductVersion>
  <Minor Minimum="0" Maximum="0" />
</ProductVersion>

Version de fichier

Obligatoire : fauxType : chaîne

FileVersion fait la différence entre la version commerciale d’une application publiée et les détails de build internes de l’exécutable d’un composant. Pour la plupart des applications commerciales, ces numéros sont identiques. Lorsqu’elles varient, la version produit d’un fichier indique une identification de version générique d’un fichier, tandis que la version de fichier indique une version spécifique d’un fichier (comme dans l’exemple d’un correctif logiciel ou d’une mise à jour). Cette version de fichier identifie de manière unique les fichiers sans rompre la logique de détection.

Pour déterminer la version du produit et la version du fichier d’un exécutable particulier, cliquez avec le bouton droit sur le fichier dans l’Explorateur Windows, sélectionnez Propriétés, puis cliquez sur l’onglet Détails.

L’inclusion d’un élément FileVersion pour une application permet une logique de détection de réglage plus granulaire, mais n’est pas nécessaire pour la plupart des applications. Les paramètres de l’élément ProductVersion sont d’abord vérifiés, puis FileVersion est vérifié. Le paramètre le plus restrictif s’applique.

Les éléments enfants et les règles de syntaxe de FileVersion sont identiques à ceux de ProductVersion.

<Process>
  <Filename>MSACCESS.EXE</Filename>
  <Architecture>Win32</Architecture>
  <ProductVersion>
    <Major Minimum="14" Maximum="14" />
    <Minor Minimum="0" Maximum="0" />
  </ProductVersion>
  <FileVersion>
    <Major Minimum="14" Maximum="14" />
    <Minor Minimum="0" Maximum="0" />
  </FileVersion>
</Process>

Élément d’application

L’application est un conteneur pour les paramètres qui s’appliquent à une application particulière. Il s’agit d’une collection de champs/types suivants.

Champ/Type Description
Name Spécifie un nom unique pour le modèle d’emplacement des paramètres. Ce nom est utilisé à des fins d’affichage lors de la référence du modèle dans WMI, PowerShell, l’observateur d’événements et les journaux de débogage. Pour plus d’informations, voir Nom.
ID Remplit un identificateur unique pour un modèle particulier. Cette balise devient l’identificateur principal que le service UE-V utilise pour référencer le modèle au moment de l’exécution. Pour plus d’informations, voir ID.
Description Description facultative du modèle.
LocalizedNames Nom facultatif affiché dans l’interface utilisateur, localisé par les paramètres régionaux d’une langue.
LocalizedDescriptions Description de modèle facultatif localisée par les paramètres régionaux d’une langue.
Version Identifie la version du modèle d’emplacement des paramètres pour le suivi administratif des modifications. Pour plus d’informations, voir Version.
DeferToMSAccount Contrôle si ce modèle est activé conjointement avec un compte Microsoft ou non. Si la synchronisation MSA est activée pour un utilisateur sur un ordinateur, ce modèle est automatiquement désactivé.
DeferToOffice365 À l’instar de MSA, ce type détermine si ce modèle est activé conjointement avec Office361. Si Office 365 est utilisé pour synchroniser les paramètres, ce modèle est automatiquement désactivé.
Profil fixe Spécifie que ce modèle ne peut être associé qu’au profil spécifié dans cet élément et qu’il ne peut pas être modifié via WMI ou PowerShell.
Processus Conteneur pour une collection d’un ou de plusieurs éléments de processus. Pour plus d’informations, voir Processus.
Paramètres Un conteneur pour tous les paramètres qui s’appliquent à un modèle particulier. Il contient des instances des paramètres Registre, Fichier, SystemParameter et CustomAction. Pour plus d’informations, consultez Paramètres dans Types de données".

Élément commun

Common est similaire à un élément Application, mais il est toujours associé à deux éléments Application ou plus. La section Commun représente l’ensemble des paramètres partagés entre ces instances d’application. Il s’agit d’une collection de champs/types suivants.

Champ/Type Description
Name Spécifie un nom unique pour le modèle d’emplacement des paramètres. Ce nom est utilisé à des fins d’affichage lors de la référence du modèle dans WMI, PowerShell, l’observateur d’événements et les journaux de débogage. Pour plus d’informations, voir Nom.
ID Remplit un identificateur unique pour un modèle particulier. Cette balise devient l’identificateur principal que le service UE-V utilise pour référencer le modèle au moment de l’exécution. Pour plus d’informations, voir ID.
Description Description facultative du modèle.
LocalizedNames Nom facultatif affiché dans l’interface utilisateur, localisé par les paramètres régionaux d’une langue.
LocalizedDescriptions Description de modèle facultatif localisée par les paramètres régionaux d’une langue.
Version Identifie la version du modèle d’emplacement des paramètres pour le suivi administratif des modifications. Pour plus d’informations, voir Version.
DeferToMSAccount Contrôle si ce modèle est activé conjointement avec un compte Microsoft ou non. Si la synchronisation MSA est activée pour un utilisateur sur un ordinateur, ce modèle est automatiquement désactivé.
DeferToOffice365 À l’instar de MSA, ce type détermine si ce modèle est activé conjointement avec Office361. Si Office 365 est utilisé pour synchroniser les paramètres, ce modèle est automatiquement désactivé.
Profil fixe Spécifie que ce modèle ne peut être associé qu’au profil spécifié dans cet élément et qu’il ne peut pas être modifié via WMI ou PowerShell.
Paramètres Un conteneur pour tous les paramètres qui s’appliquent à un modèle particulier. Il contient des instances des paramètres Registre, Fichier, SystemParameter et CustomAction. Pour plus d’informations, consultez Paramètres dans Types de données.

Élément SettingsLocationTemplate

Cet élément définit les paramètres d’une application unique ou d’une suite d’applications.

Champ/Type Description
Name Spécifie un nom unique pour le modèle d’emplacement des paramètres. Ce type est utilisé à des fins d’affichage lors du référencement du modèle dans WMI, PowerShell, l’observateur d’événements et les journaux de débogage. Pour plus d’informations, voir Nom.
ID Remplit un identificateur unique pour un modèle particulier. Cette balise devient l’identificateur principal que le service UE-V utilise pour référencer le modèle au moment de l’exécution. Pour plus d’informations, voir ID.
Description Description facultative du modèle.
LocalizedNames Nom facultatif affiché dans l’interface utilisateur, localisé par les paramètres régionaux d’une langue.
LocalizedDescriptions Description de modèle facultatif localisée par les paramètres régionaux d’une langue.

Annexe : SettingsLocationTemplate.xsd

Voici le fichier SettingsLocationTemplate.xsd montrant ses éléments, ses éléments enfants, ses attributs et ses paramètres :

<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="UevSettingsLocationTemplate"
  targetNamespace="https://schemas.microsoft.com/UserExperienceVirtualization/2013A/SettingsLocationTemplate"
  elementFormDefault="qualified"
  xmlns="https://schemas.microsoft.com/UserExperienceVirtualization/2013A/SettingsLocationTemplate"
  xmlns:mstns="https://schemas.microsoft.com/UserExperienceVirtualization/2013A/SettingsLocationTemplate"
  xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <xs:simpleType name="Guid">
        <xs:restriction base="xs:string">
            <xs:pattern value="\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="FilenameString">
        <xs:restriction base="xs:string">
            <xs:pattern value="[^\\\?\*\|&lt;&gt;/:]+" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="IDString">
        <xs:restriction base="xs:string">
            <xs:pattern value="[^\\\?\*\|&lt;&gt;/:.]+" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="CompositeIDString">
        <xs:restriction base="xs:string">
            <xs:pattern value="[^\\\?\*\|&lt;&gt;/:.]+([.][^\\\?\*\|&lt;&gt;/:.]+)?" />
        </xs:restriction>
    </xs:simpleType>

    <xs:simpleType name="TemplateVersion">
        <xs:restriction base="xs:integer">
            <xs:minInclusive value="0" />
            <xs:maxInclusive value="2147483647" />
        </xs:restriction>
    </xs:simpleType>

    <xs:complexType name="Empty">
        <xs:sequence/>
    </xs:complexType>

    <xs:complexType name="LocalizedString">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="Locale" type="xs:string" use="required"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>

    <xs:complexType name="LocalizedName">
        <xs:sequence>
            <xs:element name="Name" type="LocalizedString" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="LocalizedDescription">
        <xs:sequence>
            <xs:element name="Description" type="LocalizedString" minOccurs="1" maxOccurs="unbounded" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="ReplacedTemplates">
      <xs:sequence>
        <xs:element name="ID" type="CompositeIDString" minOccurs="1" maxOccurs="unbounded" />
    </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Author">
        <xs:all>
            <xs:element name="Name" type="xs:string" minOccurs="1" />
            <xs:element name="Email" type="xs:string" minOccurs="0" />
        </xs:all>
    </xs:complexType>

    <xs:complexType name="Range">
        <xs:attribute name="Minimum" type="xs:integer" use="required"/>
        <xs:attribute name="Maximum" type="xs:integer" use="required"/>
    </xs:complexType>

    <xs:complexType name="ProcessVersion">
        <xs:sequence>
            <xs:element name="Major" type="Range" minOccurs="1" />
            <xs:element name="Minor" type="Range" minOccurs="0" />
            <xs:element name="Build" type="Range" minOccurs="0" />
            <xs:element name="Patch" type="Range" minOccurs="0" />
        </xs:sequence>
    </xs:complexType>

    <xs:simpleType name="Architecture">
        <xs:restriction base="xs:string">
            <xs:enumeration value="Win32"/>
            <xs:enumeration value="Win64"/>
        </xs:restriction>
    </xs:simpleType>

    <xs:complexType name="Process">
        <xs:sequence>
            <xs:element name="Filename" type="FilenameString" minOccurs="1" />
            <xs:element name="Architecture" type="Architecture" minOccurs="0" />
            <xs:element name="ProductName" type="xs:string" minOccurs="0" />
            <xs:element name="FileDescription" type="xs:string" minOccurs="0" />
            <xs:element name="ProductVersion" type="ProcessVersion" minOccurs="0" maxOccurs="unbounded"/>
            <xs:element name="FileVersion" type="ProcessVersion" minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Processes">
        <xs:sequence>
            <xs:choice minOccurs="1">
                <xs:element name="Process" type="Process" />
                <xs:element name="ShellProcess" type="Empty" />
            </xs:choice>
            <xs:element name="Process" type="Process" minOccurs="0" maxOccurs="unbounded" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Path">
        <xs:simpleContent>
            <xs:extension base="xs:string">
                <xs:attribute name="Recursive" type="xs:boolean" default="false"/>
                <xs:attribute name="DeleteIfNotFound" type="xs:boolean" default="false"/>
            </xs:extension>
        </xs:simpleContent>
    </xs:complexType>

    <xs:complexType name="RegistrySetting">
        <xs:sequence>
            <xs:element name="Path" type="Path" />
            <xs:element name="Name" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
            <xs:element name="Exclude" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="Path" type="Path" minOccurs="0" />
                        <xs:element name="Name" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
                    </xs:sequence>
                </xs:complexType>
            </xs:element>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="FileSetting">
        <xs:sequence>

            <xs:element name="Root">
                <xs:complexType>
                    <xs:choice>
                        <xs:element name="KnownFolder" type="Guid" />
                        <xs:element name="RegistryEntry" type="xs:string" />
                        <xs:element name="EnvironmentVariable" type="xs:string" />
                    </xs:choice>
                </xs:complexType>
            </xs:element>

            <xs:element name="Path" minOccurs="0" type="Path" />
            <xs:element name="FileMask" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>

            <xs:element name="Exclude" minOccurs="0" maxOccurs="unbounded">
                <xs:complexType>
                    <xs:sequence>
                        <xs:element name="Path" type="Path" minOccurs="0" />
                        <xs:element name="FileMask" type="xs:string" minOccurs="0" maxOccurs="unbounded" />
                    </xs:sequence>
                </xs:complexType>
            </xs:element>

        </xs:sequence>
    </xs:complexType>

    <xs:simpleType name="CustomActionSetting">
        <xs:restriction base="xs:anyURI"/>
    </xs:simpleType>

    <xs:simpleType name="SystemParameterSetting">
        <xs:restriction base="xs:string">

            <!-- Accessibility parameters -->
            <xs:enumeration value="AccessTimeout"/>
            <xs:enumeration value="AudioDescription"/>
            <xs:enumeration value="ClientAreaAnimation"/>
            <xs:enumeration value="DisableOverlappedContent"/>
            <xs:enumeration value="FilterKeys"/>
            <xs:enumeration value="FocusBorderHeight"/>
            <xs:enumeration value="FocusBorderWidth"/>
            <xs:enumeration value="HighContrast"/>
            <xs:enumeration value="MessageDuration"/>
            <xs:enumeration value="MouseClickLock"/>
            <xs:enumeration value="MouseClickLockTime"/>
            <xs:enumeration value="MouseKeys"/>
            <xs:enumeration value="MouseSonar"/>
            <xs:enumeration value="MouseVanish"/>
            <xs:enumeration value="ScreenReader"/>
            <xs:enumeration value="ShowSounds"/>
            <xs:enumeration value="SoundSentry"/>
            <xs:enumeration value="StickyKeys"/>
            <xs:enumeration value="ToggleKeys"/>

            <!-- Input parameters -->
            <xs:enumeration value="Beep"/>
            <xs:enumeration value="BlockSendInputResets"/>
            <xs:enumeration value="DefaultInputLang"/>
            <xs:enumeration value="DoubleClickTime"/>
            <xs:enumeration value="DoubleClkHeight"/>
            <xs:enumeration value="DoubleClkWidth"/>
            <xs:enumeration value="KeyboardCues"/>
            <xs:enumeration value="KeyboardDelay"/>
            <xs:enumeration value="KeyboardPref"/>
            <xs:enumeration value="KeyboardSpeed"/>
            <xs:enumeration value="Mouse"/>
            <xs:enumeration value="MouseButtonSwap"/>
            <xs:enumeration value="MouseHoverHeight"/>
            <xs:enumeration value="MouseHoverTime"/>
            <xs:enumeration value="MouseHoverWidth"/>
            <xs:enumeration value="MouseSpeed"/>
            <xs:enumeration value="MouseTrails"/>
            <xs:enumeration value="SnapToDefButton"/>
            <xs:enumeration value="WheelScrollChars"/>
            <xs:enumeration value="WheelScrollLines"/>

            <!-- Desktop parameters (limited subset) -->
            <xs:enumeration value="DeskWallpaper"/>
            <xs:enumeration value="DesktopColor"/>

        </xs:restriction>
    </xs:simpleType>

    <xs:complexType name="Settings">
        <xs:sequence>
            <xs:element name="Asynchronous" type="xs:boolean" minOccurs="0" />
            <xs:element name="PreventOverlappingSynchronization" type="xs:boolean" minOccurs="0" />
            <xs:element name="AlwaysApplySettings" type="xs:boolean" minOccurs="0" />
            <xs:choice minOccurs="0" maxOccurs="unbounded">
                <xs:element name="Registry" type="RegistrySetting" />
                <xs:element name="File" type="FileSetting" />
                <xs:element name="SystemParameter" type="SystemParameterSetting" />
                <xs:element name="CustomAction" type="CustomActionSetting" />
            </xs:choice>
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Common">
        <xs:sequence>
            <xs:element name="Name" type="xs:string" />
            <xs:element name="ID" type="IDString" />
            <xs:element name="ReplacedTemplates" type="ReplacedTemplates" minOccurs="0" />
            <xs:element name="Description" type="xs:string" minOccurs="0" />
            <xs:element name="LocalizedNames" type="LocalizedName" minOccurs="0" />
            <xs:element name="LocalizedDescriptions" type="LocalizedDescription" minOccurs="0" />
            <xs:element name="Version" type="xs:integer" />
            <xs:element name="DeferToMSAccount" type="Empty"  minOccurs="0" />
            <xs:element name="DeferToOffice365" type="Empty" minOccurs="0" />
            <xs:element name="Settings" type="Settings" />
        </xs:sequence>
    </xs:complexType>

    <xs:complexType name="Application">
        <xs:sequence>
            <xs:element name="Name" type="xs:string" />
            <xs:element name="ID" type="IDString" />
            <xs:element name="ReplacedTemplates" type="ReplacedTemplates" minOccurs="0" />
            <xs:element name="Description" type="xs:string" minOccurs="0" />
            <xs:element name="LocalizedNames" type="LocalizedName" minOccurs="0" />
            <xs:element name="LocalizedDescriptions" type="LocalizedDescription" minOccurs="0" />
            <xs:element name="Version" type="xs:integer" />
            <xs:element name="DeferToMSAccount" type="Empty"  minOccurs="0" />
            <xs:element name="DeferToOffice365" type="Empty" minOccurs="0" />
            <xs:element name="Processes" type="Processes" />
            <xs:element name="Settings" type="Settings" />
        </xs:sequence>
    </xs:complexType>

    <xs:element name="SettingsLocationTemplate">
        <xs:complexType>
            <xs:sequence>

                <xs:element name="Name" type="xs:string" />
                <xs:element name="ID" type="IDString" />
                <xs:element name="Description" type="xs:string" minOccurs="0" />
                <xs:element name="LocalizedNames" type="LocalizedName" minOccurs="0" />
                <xs:element name="LocalizedDescriptions" type="LocalizedDescription" minOccurs="0" />

                <xs:choice>

                    <!-- Single application -->
                    <xs:sequence>
                        <xs:element name="ReplacedTemplates" type="ReplacedTemplates" minOccurs="0" />
                        <xs:element name="Version" type="TemplateVersion" />
                        <xs:element name="Author" type="Author" minOccurs="0" />
                        <xs:element name="FixedProfile" type="xs:string"  minOccurs="0" />
                        <xs:element name="DeferToMSAccount" type="Empty"  minOccurs="0" />
                        <xs:element name="DeferToOffice365" type="Empty" minOccurs="0" />
                        <xs:element name="Processes" type="Processes" />
                        <xs:element name="Settings" type="Settings" />
                    </xs:sequence>

                    <!-- Suite of applications -->
                    <xs:sequence>
                        <xs:element name="ManageSuiteOnly" type="xs:boolean" minOccurs="0" />
                        <xs:element name="Author" type="Author" minOccurs="0" />
                        <xs:element name="FixedProfile" type="xs:string"  minOccurs="0" />
                        <xs:element name="Common" type="Common" />
                        <xs:element name="Application" type="Application" minOccurs="2" maxOccurs="unbounded" />
                    </xs:sequence>

                </xs:choice>

            </xs:sequence>
        </xs:complexType>
    </xs:element>
    <!-- SettingsLocationTemplate -->

</xs:schema>

Utilisation des modèles UE-V personnalisés et du Générateur de modèles UE-VInformations techniques de référence pour UE-V