Structure du fichier de définition d’application
Cet article décrit la structure XML des fichiers de définition d’application de Profile Management. La structure s’applique à la fois au profileur d’applications et aux paramètres multi-plateformes.
Tableau d’architecture
-
Déclaration XML et attribut Encoding
La déclaration XML doit spécifier l’attribut <?xml version=”1.0”>.
Encoding=”UTF-8” est un attribut recommandé.
-
GroupDefinitions
Conteneur de collections de groupes. Il agit en tant qu’élément racine du document XML. Ses attributs incluent version et GUID. Ce sont des attributs obligatoires.
-
Groupe
Définit les paramètres d’une sous-application. Ses attributs sont name et GUID. Ce sont des attributs obligatoires.
-
Objet
Définit un paramètre d’une sous-application. Ses attributs sont name et GUID. Ce sont des attributs obligatoires.
-
Plateforme
Fournit différentes définitions dans différents systèmes d’exploitation. Il peut utiliser un attribut facultatif OSVersionNumber pour spécifier le système d’exploitation. Lorsqu’il n’y a pas d’attribut, toutes les plates-formes acceptent la définition interne du paramètre. Platform doit contenir l’un des éléments suivants : RegKey, RegValue, File, Folder et Wallpaper.
-
RegKey
Définit un paramètre en tant que clé dans le registre. Il doit contenir l’élément Key. Il comprend deux sous-éléments facultatifs, Recurse et Merge. Recurse et Merge définissent les performances lorsque Profile Management utilise la clé en itinérance. ExcludeValues est un autre sous-élément facultatif qui définit les valeurs de registre pouvant être exclues.
-
RegValue
Définit un paramètre en tant que valeur dans le registre. Il doit contenir Key pour spécifier le chemin de sa clé parente.
-
Dossier
Définit un paramètre en tant que dossier. Il doit contenir
Path
pour spécifier le chemin du dossier. Il comporte les sous-éléments facultatifs,Recurse
etMerge
.Recurse
etMerge
définissent les performances lorsque Profile Management utilise le dossier en itinérance.ExcludeFiles
est un autre sous-élément facultatif qui définit les fichiers pouvant être exclus. -
Fichier
Définit un paramètre en tant que fichier. Il doit contenir
Path
pour spécifier le chemin de son dossier parent etFileName
pour spécifier le nom d’un fichier. -
Fond d’écran
Définit tous les paramètres de fond d’écran. Aucun attribut ou sous-élément n’est requis. Profile Management utilise ces paramètres en itinérance automatiquement.
-
Clé
Spécifie le chemin de la clé de registre ou le chemin de la clé de registre parente. Key est le sous-élément de RegKey et RegValue.
-
ValueName
Spécifie le nom de la valeur de registre. C’est un sous-élément de RegValue.
-
Chemin
Spécifie le chemin du dossier ou le chemin du dossier parent. C’est un sous-élément de Folder et File. Les variables de Profile Management peuvent être adoptées.
-
Filename
Spécifie le nom d’un fichier. C’est un sous-élément de File.
-
Recurse
Sous-élément facultatif de RegKey et Folder. Si cet élément existe, Profile Management utilise la clé et le dossier en itinérance de manière récursive.
-
Merge
Sous-élément facultatif de RegKey et Folder. Si cet élément existe, Profile Management fusionne (mais ne remplace pas) la clé et le dossier.
-
ExcludeValues
Sous-élément facultatif de RegKey. Spécifie les valeurs qui peuvent être exclues lors de l’itinérance de la clé.
-
ExcludeFiles
Sous-élément facultatif de Folder. Spécifie les fichiers qui peuvent être exclus lors de l’itinérance du dossier.
-
Exclude
Sous-élément de ExcludeValues et ExcludeFiles. Spécifie les éléments exclus des fichiers ou des valeurs de registre.
Remarque
Assurez-vous que le format de la syntaxe de votre document est correct. Profile Management vérifie ces fichiers en utilisant le fichier de validation CPSValidationSchema.xsd lorsque ces fichiers sont chargés. Le fichier de validation se trouve sous le chemin d’installation de Profile Management. Profile Management ignore les fichiers incorrects et enregistre les messages d’erreur dans le journal.
Sample
<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2011 Citrix Systems, Inc. All Rights Reserved. -->
<GroupDefinitions GUID="748E63D3-426E-4796-9C32-420B25DB2D9F" Version="4.0.0.0">
<!-- Application Settings -->
<Group GUID="0FCCCF29-0A0E-482d-A77E-3F39A8A854A6" Name="Application Settings">
<!-- Registry Key Setting Example -->
<Object GUID="637EC13C-2D47-4142-A8EB-3CEA6D53522A" Name="Software\Application\certain key">
<Platform>
<RegKey>
<Key>Software\Microsoft\Office\certain key</Key>
<Merge/>
<Recurse/>
<ExcludeValues>
<Exclude>excluded value 1</Exclude>
<Exclude>excluded value 2</Exclude>
<Exclude>excluded value 3</Exclude>
</ExcludeValues>
</RegKey>
</Platform>
</Object>
<!-- Registry Value Setting Example -->
<Object GUID="3C896310-10C4-4e5f-90C7-A79F4E653F81" Name="Software\Application\certain value">
<!-- Folder Setting Example -->
<Object GUID="7F8615D0-5E63-4bd0-982D-B7740559C6F9" Name="!CTX_ROAMINGAPPDATA!\Application\setting folder">
<Platform>
<Folder>
<!-- We can use Citrix variable if necessary -->
<Path>!CTX_ROAMINGAPPDATA!\Application\setting folder</Path>
<Merge/>
<Recurse/>
<ExcludeFiles>
<Exclude>excluded file 1</Exclude>
<Exclude>excluded file 2</Exclude>
<Exclude>excluded file 3</Exclude>
</ExcludeFiles>
</Folder>
</Platform>
</Object>
<!-- File Setting Example -->
<Object GUID="7F8615D0-5E63-4bd0-982D-B7740559C6F9" Name="!CTX_ROAMINGAPPDATA!\Application\file.txt">
<Platform>
<File>
<!-- We can use Citrix variable if necessary -->
<Path>!CTX_ROAMINGAPPDATA!\Application</Path>
<FileName>file.txt</FileName>
</File>
</Platform>
</Object>
<!-- Setting based on different OS -->
<Object GUID="1B43DE3F-EC9C-463c-AC19-CD01D00219B6" Name="!CTX_ROAMINGAPPDATA!\Application\%osname%\folder">
<!-- Assuming that the folder locates differently when in different platforms -->
<Platform OSVersionNumber="6.1">
<!-- Win7 -->
<Folder>
<Path>!CTX_ROAMINGAPPDATA!\Application\Win7\folder</Path>
<Recurse/>
</Folder>
</Platform>
<Platform OSVersionNumber="10.0">
<!-- Win10 -->
<Folder>
<Path>!CTX_ROAMINGAPPDATA!\Application\Win10\folder</Path>
<Recurse/>
</Folder>
</Platform>
</Object>
</Group>
</GroupDefinitions>