Struktur von Anwendungsdefinitionsdateien
In diesem Artikel wird die XML-Struktur von Anwendungsdefinitionsdateien für die Profilverwaltung beschrieben. Die Struktur gilt sowohl für den Anwendungsprofiler als auch für plattformübergreifende Einstellungen.
Architektur
-
XML-Deklaration und Kodierungsattribut
Die XML-Deklaration muss das Attribut <?xml version=”1.0”> angeben.
Encoding=”UTF-8” ist ein empfohlenes Attribut.
-
GroupDefinitions
Ein Container mit Sammlungen von Gruppen. Es fungiert als Stammelement des XML-Dokuments. Die Attribute umfassen “version” und “GUID”. Sie sind obligatorische Attribute.
-
Gruppe
Definiert die Einstellungen einer Unteranwendung. Die Attribute sind “name” und “GUID”. Sie sind obligatorische Attribute.
-
Objekt
Definiert eine Einstellung einer Unteranwendung. Die Attribute sind “name” und “GUID”. Sie sind obligatorische Attribute.
-
Plattform
Dieses Attribut bietet unterschiedliche Definitionen in verschiedenen Betriebssystemen. Es kann mit dem optionalen Attribut “OSVersionNumber” das Betriebssystem angeben. Wenn kein Attribut vorhanden ist, akzeptieren alle Plattformen die innere Definition der Einstellung. Das Attribut “Platform” muss eines der folgenden Elemente enthalten: RegKey, RegValue, File, Folder oder Wallpaper.
-
RegKey
Definiert eine Einstellung als Schlüssel in der Registrierung. Es muss das Element “Key” enthalten. Es enthält zwei optionale Unterelemente, “Recurse” und “Merge”. “Recurse” und “Merge” definieren die Leistung, wenn die Profilverwaltung den Schlüssel durchläuft. Ein weiteres optionales Unterelement ist “ExcludeValues”. ExcludeValues definiert die Registrierungswerte, die ausgeschlossen werden können.
-
RegValue
Definiert eine Einstellung als Wert in der Registrierung. Es muss “Key” enthalten, um den Pfad seines übergeordneten Key-Elements anzugeben.
-
Ordner
Definiert eine Einstellung als Ordner. Es muss
Path
enthalten, um den Pfad des Ordners anzugeben. Es verfügt über die optionalen UnterelementeRecurse
undMerge
.Recurse
undMerge
definieren die Leistung, wenn das Profilmanagement den Ordner durchläuft. Ein weiteres optionales Unterelement istExcludeFiles
, das die Dateien definiert, die ausgeschlossen werden können. -
Datei
Definiert eine Einstellung als Datei. Es muss
Path
enthalten, um den Pfad des übergeordneten Ordners anzugeben, undFileName
, um den Namen einer Datei anzugeben. -
Hintergrundbild
Definiert alle Hintergrundeinstellungen. Es sind keine Attribute oder Unterelemente erforderlich. Die Profilverwaltung durchläuft diese Einstellungen automatisch.
-
Schlüssel
Gibt den Pfad des Registrierungsschlüssels oder den Pfad des übergeordneten Registrierungsschlüssels an. “Key” ist das Unterelement von “RegKey” und “RegValue”.
-
ValueName
Gibt den Namen des Registrierungswerts an. Es ist ein Unterelement von “RegValue”.
-
Pfad
Gibt den Pfad des Ordners oder des übergeordneten Ordners an. Es ist ein Unterelement von “Folder” und “File”. Profilverwaltungsvariablen können übernommen werden.
-
FileName
Gibt den Namen einer Datei an. Es ist ein Unterelement von “File”.
-
Recurse
Optionales Unterelement von “RegKey” und “Folder”. Wenn dieses Element vorhanden ist, durchläuft die Profilverwaltung den Schlüssel und den Ordner rekursiv.
-
Merge
Optionales Unterelement von “RegKey” und “Folder”. Wenn dieses Element vorhanden ist, führt die Profilverwaltung den Schlüssel und den Ordner zusammen (keine Ersetzung).
-
ExcludeValues
Optionales Unterelement von “RegKey”. Gibt die Werte an, die beim Durchlaufen des Schlüssels ausgeschlossen werden können.
-
ExcludeFiles
Optionales Unterelement von “Folder”. Gibt die Dateien an, die beim Durchlaufen des Ordners ausgeschlossen werden können.
-
Exclude
Unterelement von “ExcludeValues” und “ExcludeFiles”. Gibt die ausgeschlossenen Elemente für Dateien oder Registrierungswerte an.
Hinweis
Stellen Sie sicher, dass Ihr Dokument ein korrektes Syntaxformat enthält. Die Profilverwaltung überprüft diese Dateien mit der Validierungsdatei CPSValidationSchema.xsd, wenn die Dateien geladen werden. Sie finden die Validierungsdatei im Installationspfad der Profilverwaltung. Die Profilverwaltung ignoriert falsche Dateien und zeichnet Fehlermeldungen im Protokoll auf.
Beispiel
<?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>