Freigeben über


Anwendungsvorlagenschemareferenz für UE-V 2.1 SP1

Microsoft User Experience Virtualization (UE-V) 2.1 SP1 verwendet XML-Einstellungsspeicherortvorlagen, um die Desktopanwendungseinstellungen und Windows-Einstellungen zu definieren, die von UE-V erfasst und angewendet werden. UE-V enthält eine Reihe von Standardeinstellungsspeicherortvorlagen. Sie können auch benutzerdefinierte Speicherortvorlagen für Einstellungen mit dem UE-V-Generator erstellen.

Ein erweiterter Benutzer kann die XML-Datei für eine Einstellungsspeicherortvorlage anpassen. Dieser Artikel beschreibt die XML-Struktur der UE-V 2.1 SP1-Einstellungsspeicherortvorlagen und enthält Anleitungen zum Bearbeiten dieser Dateien.

Referenz zum UE-V 2.1 SP1-Anwendungsvorlagenschema

In diesem Abschnitt wird die XML-Struktur der Vorlage für den UE-V 2.1 SP1-Einstellungsspeicherort erläutert und anleitungen zum Bearbeiten dieser Datei bereitgestellt.

XML-Deklaration und -Codierungsattribut

Obligatorisch: True

Typ: Zeichenfolge

Die XML-Deklaration muss das XML Version 1.0-Attribut (<?xml version="1.0">) angeben. Einstellungsspeicherortvorlagen, die vom UE-V-Generator erstellt wurden, werden in UTF-8-Codierung gespeichert, obwohl die Codierung nicht explizit angegeben ist. Als bewährte Methode wird empfohlen, das Attribut encoding="UTF-8" in dieses Element aufzunehmen. Alle Vorlagen, die im Produkt enthalten sind, geben auch dieses Tag an. Eine Referenz finden Sie in den Dokumenten in %ProgramFiles%\Microsoft User Experience Virtualization\Templates.

Zum Beispiel:

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

Namespace und Stammelement

Obligatorisch: True

Typ: Zeichenfolge

UE-V verwendet den https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate Namespace für alle Anwendungen. SettingsLocationTemplate ist das Stammelement und enthält alle anderen Elemente. Referenz SettingsLocationTemplate in allen Vorlagen, die dieses Tag verwenden:

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

Datentypen

Diese Elemente sind die Datentypen für das UE-V-Anwendungsvorlagenschema.

  • GUID: GUID beschreibt einen standardmäßigen GUID-Regulären Ausdruck (RegEx) im Format \{[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}\}. Diese GUID wird im Filesetting\Root\KnownFolder -Element verwendet, um die Formatierung bekannter Ordner zu überprüfen.

  • FilenameString: FilenameString bezieht sich auf den Dateinamen eines zu überwachenden Prozesses. Der folgende reguläre Ausdruck schränkt seine Werte ein: [^\\\?\*\|<>/:]+. Mit anderen Worten, sie dürfen die folgenden Zeichen nicht enthalten:

    • Umgekehrter Schrägstrich (\)
    • Sternchen (*)
    • Fragezeichen (?)
    • Pipezeichen (|)
    • Größer als-Zeichen (>)
    • Kleiner als-Zeichen (<)
    • Schrägstrich (/)
    • Doppelpunkt (:)
  • IDString: IDString bezieht sich auf den ID-Wert der Elemente Application, SettingsLocationTemplate und Common (werden verwendet, um Anwendungssammlungen zu beschreiben, die gemeinsame Einstellungen verwenden). Es ist durch denselben regex eingeschränkt wie FilenameString ([^\\\?\*\|<>/:]+).

  • TemplateVersion: TemplateVersion ist ein ganzzahliger Wert, der verwendet wird, um die Revision der Einstellungsspeicherortvorlage zu beschreiben. Sein Wert kann zwischen 0 und 2147483647 liegen.

  • Leer: Leer bezieht sich auf einen NULL-Wert. Diese Daten werden in Process\ShellProcess verwendet, um anzugeben, dass kein Prozess zu überwachen ist. Dieser Wert sollte nicht in Anwendungsvorlagen verwendet werden.

  • Autor: Der Author-Datentyp ist ein komplexer Typ, der den Autor einer Vorlage identifiziert. Sie enthält zwei untergeordnete Elemente: Name und Email. Innerhalb des Author-Datentyps ist das Name-Element obligatorisch, während das element Email optional ist. Dieser Typ wird unter dem SettingsLocationTemplate-Element ausführlicher beschrieben.

  • Bereich: Range definiert eine ganzzahlige Klasse, die aus zwei untergeordneten Elementen besteht: Minimum und Maximum. Dieser Datentyp wird im Datentyp ProcessVersion implementiert. Falls angegeben, müssen sowohl minimum- als auch maximum-Werte eingeschlossen werden.

  • ProcessVersion: ProcessVersion definiert einen Typ mit vier untergeordneten Elementen: Haupt-, Neben-, Build- und Patch-Elemente. Dieser Datentyp wird vom Process-Element verwendet, um seine ProductVersion- und FileVersion-Werte aufzufüllen. Die Daten für diesen Typ sind ein Range-Wert. Das untergeordnete Major-Element ist obligatorisch, und die anderen sind optional.

  • Architektur: Architektur listet zwei mögliche Werte auf: Win32 und Win64. Diese Werte werden verwendet, um die Prozessarchitektur anzugeben.

  • Prozess: Der Datentyp Process ist ein Container, der zum Beschreiben von Prozessen verwendet wird, die UE-V überwachen soll. Sie enthält sechs untergeordnete Elemente: Filename, Architecture, ProductName, FileDescription, ProductVersion und FileVersion. In dieser Tabelle wird der jeweilige Datentyp jedes Elements ausführlich beschrieben:

Element Datentyp Mandatory
Dateiname FilenameString Wahr
Architecture Architecture False
ProductName Zeichenfolge False
FileDescription Zeichenfolge False
ProductVersion ProcessVersion False
FileVersion ProcessVersion False
  • Prozesse: Der Datentyp Processes stellt einen Container für eine Sammlung von einem oder mehreren Process-Elementen dar. Zwei untergeordnete Elemente werden im Sequenztyp Prozesse unterstützt: Process und ShellProcess. Process ist ein Element vom Typ Process, und ShellProcess ist vom Datentyp Empty. In der Sequenz muss mindestens ein Element identifiziert werden.

  • Pfad: Pfad wird von RegistrySetting und FileSetting verwendet, um auf Registrierungs- und Dateipfade zu verweisen. Dieses Element unterstützt zwei optionale Attribute: Recursive und DeleteIfNotFound. Beide Werte sind auf default="False" festgelegt.

    Rekursiv gibt an, dass der Pfad und alle Unterordner für Dateieinstellungen enthalten sind oder dass alle untergeordneten Registrierungsschlüssel für Registrierungseinstellungen enthalten sind. In beiden Fällen sind alle Elemente auf der aktuellen Ebene in den erfassten Daten enthalten. Bei einem FileSettings-Objekt sind alle Dateien innerhalb des angegebenen Ordners in den von UE-V erfassten Daten enthalten, aber ordner sind nicht enthalten. Für Registrierungspfade werden alle Werte im aktuellen Pfad erfasst, aber untergeordnete Registrierungsschlüssel werden nicht erfasst. In beiden Fällen sollte darauf geachtet werden, dass keine großen Datasets oder eine große Anzahl von Elementen erfasst werden.

    Das DeleteIfNotFound-Attribut entfernt die Einstellung aus den Speicherpfaddaten des Benutzers für Einstellungen. Dieses Attribut kann in Fällen nützlich sein, in denen das Entfernen dieser Einstellungen aus dem Paket viel Speicherplatz auf dem Dateiserver des Speicherpfads für Einstellungen spart.

  • FileMask: FileMask gibt nur bestimmte Dateitypen für den Ordner an, den das Path-Attribut definiert. Path kann z. B. lauten C:\users\username\files , und FileMask könnte sein *.txt , um nur Textdateien einzuschließen.

  • RegistrySetting: RegistrySetting stellt einen Container für Registrierungsschlüssel und -werte und das zugehörige gewünschte Verhalten des UE-V-Agents dar. In diesem Typ werden vier untergeordnete Elemente definiert: Path, Name, Exclude und eine Sequenz der Werte Path und Name.

  • FileSetting: FileSetting enthält Parameter, die Dateien und Dateipfaden zugeordnet sind. Vier untergeordnete Elemente sind definiert: Root, Path, FileMask und Exclude. Root ist obligatorisch, und die anderen sind optional.

  • Einstellungen: Das Einstellungsattribut ist ein Container für alle Einstellungen, die für eine bestimmte Vorlage gelten. Sie enthält Instanzen der zuvor beschriebenen Einstellungen Registry, File, SystemParameter und CustomAction. Darüber hinaus kann sie auch die folgenden untergeordneten Elemente mit beschriebenen Verhaltensweisen enthalten:

Element Beschreibung
Asynchrone Asynchrone Einstellungspakete werden angewendet, ohne den Anwendungsstart zu blockieren, sodass der Anwendungsstart fortgesetzt wird, während die Einstellungen noch angewendet werden. Dieses Element ist nützlich für Einstellungen, die asynchron angewendet werden können, z get/set . B. über eine API wie SystemParameterSetting.
PreventOverlappingSynchronization Standardmäßig speichert UE-V Einstellungen für eine Anwendung nur, wenn die letzte instance einer Anwendung, die die Vorlage verwendet, geschlossen wird. Wenn dieses Element auf false festgelegt ist, exportiert UE-V die Einstellungen auch dann, wenn andere Instanzen einer Anwendung ausgeführt werden. Geeignete Vorlagen , die einen Allgemeinen Elementabschnitt enthalten, die mit UE-V ausgeliefert werden, verwenden dieses Flag, um freigegebene Einstellungen immer beim Schließen der Anwendung zu exportieren, während anwendungsspezifische Einstellungen nicht exportiert werden können, bis die letzte instance geschlossen wird.
AlwaysApplySettings Dieser Parameter erzwingt, dass ein importiertes Einstellungspaket angewendet wird, auch wenn es keine Unterschiede zwischen dem Paket und dem aktuellen Zustand der Anwendung gibt. Dieser Parameter sollte nur in besonderen Fällen verwendet werden, da er den Import von Einstellungen verlangsamen kann.

Name-Element

Obligatorisch: True

Typ: Zeichenfolge

Name gibt einen eindeutigen Namen für die Einstellungsspeicherortvorlage an. Dies wird zu Anzeigezwecken verwendet, wenn auf die Vorlage in WMI, PowerShell, Ereignisanzeige und Debugprotokollen verwiesen wird. Vermeiden Sie im Allgemeinen den Verweis auf Versionsinformationen, da dies über das ProductVersion-Element widersprochen werden kann. Geben Sie beispielsweise anstelle von <Name>My Application 1.1</Name>an<Name>My Application</Name>.

Hinweis

UE-V verweist nicht auf externe DTDs, sodass es nicht möglich ist, benannte Entitäten in einer Einstellungsspeicherortvorlage zu verwenden. Verwenden Sie &reg; beispielsweise nicht, um auf das eingetragene Markenzeichen (®) zu verweisen. Verwenden Sie stattdessen kanonische nummerierte Verweise, um diese Arten von Sonderzeichen einzuschließen, &#174 z. B. für das eingetragene Markenzeichen (®). Diese Regel gilt für alle Zeichenfolgenwerte in diesem Dokument.

Eine vollständige Liste der Zeichenentitäten finden Sie unter W3 XHTML 1.0 – DTDs. UTF-8-codierte Dokumente können die Unicode-Zeichen direkt enthalten. Beim Speichern von Vorlagen über den UE-V-Generator werden Zeichenentitäten automatisch in ihre Unicode-Darstellungen konvertiert.

ID-Element

Obligatorisch: True

Typ: Zeichenfolge

ID füllt einen eindeutigen Bezeichner für eine bestimmte Vorlage auf. Dieses Tag wird zum primären Bezeichner, den der UE-V-Agent verwendet, um zur Laufzeit auf die Vorlage zu verweisen (siehe z. B. die Ausgabe der Get-UevTemplate und Get-UevTemplateProgram PowerShell-Cmdlets). Standardmäßig sollte dieses Tag keine Leerzeichen enthalten, was die Skripterstellung vereinfacht. Versionsnummern von Anwendungen sollten in diesem Element angegeben werden, um eine einfache Identifizierung der Vorlage zu ermöglichen, z <ID>MicrosoftCalculator6</ID> . B. oder <ID>MicrosoftOffice2010Win64</ID>.

Version-Element

Obligatorisch: True

Typ: Integer

Mindestwert: 0

Maximalwert: 2147483647

Version gibt die Version der Einstellungsspeicherortvorlage für die administrative Nachverfolgung von Änderungen an. Der UE-V-Generator erhöht diese Zahl automatisch um 1, wenn die Vorlage gespeichert wird. Beachten Sie, dass dieses Feld eine ganze Zahl sein muss. Bruchwerte wie <Version>2.5</Version> sind nicht zulässig.

Tipp

Sie können Notizen zu Versionsänderungen mithilfe von XML-Kommentartags <!-- -->speichern, z. B.:

  <!--
     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>

Wichtig

Dieser Wert wird abgefragt, um zu bestimmen, ob eine neue Version einer Vorlage auf eine vorhandene Vorlage in diesen Instanzen angewendet werden soll:

  • Wenn der geplante Task "Automatische Vorlagenaktualisierung" ausgeführt wird.

  • Wenn das Update-UevTemplate PowerShell-Cmdlet ausgeführt wird.

  • Wenn die microsoft\uev:SettingsLocationTemplate Update-Methode über WMI aufgerufen wird.

Author-Element

Obligatorisch: False

Typ: Zeichenfolge

Autor identifiziert den Ersteller der Einstellungsspeicherortvorlage. Zwei optionale untergeordnete Elemente werden unterstützt: Name und Email. Beide Attribute sind optional, aber wenn das Email untergeordnete Element angegeben ist, muss es vom Name-Element begleitet werden. Autor bezieht sich auf den vollständigen Namen des Kontakts für die Einstellungsspeicherortvorlage, und E-Mail sollte auf eine E-Mail-Adresse für den Autor verweisen. Es wird empfohlen, diese Informationen in Vorlagen aufzunehmen, die Sie öffentlich veröffentlichen.

Prozesse und Prozesselement

Obligatorisch: True

Typ: Element

Das Processes-Element enthält mindestens ein <Process> Element, das wiederum die folgenden untergeordneten Elemente enthält: Filename, Architecture, ProductName, FileDescription, ProductVersion und FileVersion. Das untergeordnete Filename-Element ist obligatorisch, und die anderen elemente sind optional. Ein vollständig aufgefülltes Element enthält Tags wie in diesem Beispiel:

<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>

Dateiname

Obligatorisch: True

Typ: Zeichenfolge

Filename bezieht sich auf den tatsächlichen Dateinamen der ausführbaren Datei, wie er im Dateisystem angezeigt wird. Dieses Element gibt das primäre Kriterium an, das UE-V verwendet, um zu bewerten, ob eine Vorlage für einen Prozess gilt oder nicht. Dieses Element muss im XML-Code der Einstellungsspeicherortvorlage angegeben werden.

Gültige Dateinamen können nicht mit dem folgenden regulären Ausdruck übereinstimmen: [^\\\?\*\|<>/:]+. Mit anderen Worten, sie dürfen die folgenden Zeichen nicht enthalten:

  • Umgekehrter Schrägstrich (\)
  • Sternchen (*)
  • Fragezeichen (?)
  • Pipezeichen (|)
  • Größer als-Zeichen (>)
  • Kleiner als-Zeichen (<)
  • Schrägstrich (/)
  • Doppelpunkt (:)

Tipp

Um eine Zeichenfolge mit diesem regex zu testen, verwenden Sie ein PowerShell-Befehlsfenster, und ersetzen Sie den Namen Ihrer ausführbaren Datei durch YourFileName:

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

Der Wert True gibt an, dass die Zeichenfolge unzulässige Zeichen enthält. Hier sind einige Beispiele für unzulässige Werte:

  • \\server\share\program.exe

  • Program*.exe

  • Pro?ram.exe

  • Program<1>.exe

Hinweis

Der UE-V-Generator codiert die Zeichen größer als und kleiner als als bzw &gt;&lt; . .

In seltenen Fällen enthält der FileName-Wert nicht unbedingt die erweiterung .exe, aber er sollte als Teil des Werts angegeben werden. Beispielsweise <Filename>MyApplictication.exe</Filename> sollte anstelle von <Filename>MyApplictication</Filename>angegeben werden. Im zweiten Beispiel wird die Vorlage nicht auf den Prozess angewendet, wenn der tatsächliche Name der ausführbaren Datei lautet MyApplication.exe.

Architecture

Obligatorisch: False

Typ: Architektur (Zeichenfolge)

Architektur bezieht sich auf die Prozessorarchitektur, für die die ausführbare Zieldatei kompiliert wurde. Gültige Werte sind Win32 für 32-Bit-Anwendungen oder Win64 für 64-Bit-Anwendungen. Falls vorhanden, beschränkt dieses Tag die Anwendbarkeit der Einstellungsspeicherortvorlage auf eine bestimmte Anwendungsarchitektur. Vergleichen Sie z. B. die %ProgramFiles%\Microsoft User Experience Virtualization\templates\MicrosoftOffice2010Win32.1SP1.xml in UE-V enthaltenen Dateien und MicrosoftOffice2010Win64.xml . Dies ist nützlich, wenn sich relative Pfade zwischen verschiedenen Versionen einer ausführbaren Datei ändern oder wenn Einstellungen hinzugefügt oder entfernt werden, wenn sie von einer Prozessorarchitektur zu einer anderen wechseln.

Wenn dieses Element nicht vorhanden ist, ignoriert die Einstellungsspeicherortvorlage die Architektur des Prozesses und gilt sowohl für 32-Bit- als auch für 64-Bit-Prozesse, wenn der Dateiname und andere Attribute zutreffen.

Hinweis

UE-V unterstützt in dieser Version keine ARM-Prozessoren.

ProductName

Obligatorisch: False

Typ: Zeichenfolge

ProductName ist ein optionales Element, das verwendet wird, um ein Produkt für Administrative Zwecke oder Berichte zu identifizieren. ProductName unterscheidet sich von Filename darin, dass es keine Einschränkungen für reguläre Ausdrücke für den Wert gibt. Dies ermöglicht leichter verständliche Beschreibungen eines Prozesses, bei dem der Name der ausführbaren Datei nicht offensichtlich ist. Zum Beispiel:

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

FileDescription

Obligatorisch: False

Typ: Zeichenfolge

FileDescription ist ein optionales Tag, das eine administrative Beschreibung der ausführbaren Datei ermöglicht. Dies ist ein Freitextfeld und kann nützlich sein, um mehrere ausführbare Dateien innerhalb eines Softwarepakets zu unterscheiden, bei denen die Funktion der ausführbaren Datei identifiziert werden muss.

In einer geeigneten Anwendung kann es z. B. hilfreich sein, Erinnerungen zur Funktion von zwei ausführbaren Dateien (MyApplication.exe und MyApplicationHelper.exe) bereitzustellen, wie hier gezeigt:

<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

Obligatorisch: False

Typ: Zeichenfolge

ProductVersion bezieht sich auf die Haupt- und Nebenproduktversionen einer Datei sowie eine Build- und Patchebene. ProductVersion ist ein optionales Element, aber wenn angegeben, muss es mindestens das untergeordnete Major-Element enthalten. Der Wert muss einen Bereich im Format Minimum="X" Maximum="Y" ausdrücken, wobei X und Y ganze Zahlen sind. Die Werte Minimum und Maximum können identisch sein.

Die Produkt- und Dateiversionselemente können nicht angegeben werden. Dadurch wird die Vorlagenversion agnostisch, was bedeutet, dass die Vorlage für alle Versionen der angegebenen ausführbaren Datei gilt.

Beispiel 1: Produktversion 1.0

Produktversion: 1.0, die im UE-V-Generator angegeben ist, erzeugt den folgenden XML-Code:

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

Beispiel 2: Produktversion 5.0.2.1000

Dateiversion: 5.0.2.1000, die im UE-V-Generator angegeben ist, erzeugt den folgenden XML-Code:

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

Falsches Beispiel 1 – unvollständiger Bereich

Es ist nur das Minimum-Attribut vorhanden. Maximum muss ebenfalls in einem Bereich enthalten sein.

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

Falsches Beispiel 2 : Nebenangabe ohne Hauptelement

Nur das Nebenelement ist vorhanden. Hauptfach muss ebenfalls enthalten sein.

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

FileVersion

Obligatorisch: False

Typ: Zeichenfolge

FileVersion unterscheidet zwischen der Releaseversion einer veröffentlichten Anwendung und den internen Builddetails einer ausführbaren Komponente. Für die meisten kommerziellen Anwendungen sind diese Nummern identisch. Wenn sie variieren, gibt die Produktversion einer Datei eine generische Versionsidentifikation einer Datei an, während die Dateiversion einen bestimmten Build einer Datei (wie in einem Hotfix oder Update) angibt. Dadurch werden Dateien eindeutig identifiziert, ohne die Erkennungslogik zu unterbrechen.

Um die Produkt- und Dateiversion einer bestimmten ausführbaren Datei zu ermitteln, klicken Sie mit der rechten Maustaste auf die Datei in Windows Explorer, wählen Sie Eigenschaften und dann auf der Registerkarte Details aus.

Das Einschließen eines FileVersion-Elements für eine Anwendung ermöglicht eine präzisere Erkennungslogik, ist jedoch für die meisten Anwendungen nicht erforderlich. Die ProductVersion-Elementeinstellungen werden zuerst und dann FileVersion aktiviert. Es gilt die restriktivere Einstellung.

Die untergeordneten Elemente und Syntaxregeln für FileVersion sind mit denen von ProductVersion identisch.

<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>

Anwendungselemente

Die Anwendung ist ein Container für Einstellungen, die für eine bestimmte Anwendung gelten. Es handelt sich um eine Auflistung der folgenden Felder/Typen.

Feld/Typ Beschreibung
Name Gibt einen eindeutigen Namen für die Einstellungsspeicherortvorlage an. Dies wird zu Anzeigezwecken verwendet, wenn auf die Vorlage in WMI, PowerShell, Ereignisanzeige und Debugprotokollen verwiesen wird. Weitere Informationen finden Sie unter Name.
ID Füllt einen eindeutigen Bezeichner für eine bestimmte Vorlage auf. Dieses Tag wird zum primären Bezeichner, den der UE-V-Agent verwendet, um zur Laufzeit auf die Vorlage zu verweisen. Weitere Informationen finden Sie unter ID.
Beschreibung Eine optionale Beschreibung der Vorlage.
LocalizedNames Ein optionaler Name, der auf der Benutzeroberfläche angezeigt wird, lokalisiert durch ein Sprachgebietsschema.
LocalizedDescriptions Eine optionale Vorlagenbeschreibung, die durch ein Sprachgebietsschema lokalisiert wird.
Version Gibt die Version der Einstellungsspeicherortvorlage für die administrative Nachverfolgung von Änderungen an. Weitere Informationen finden Sie unter Version.
DeferToMSAccount Steuert, ob diese Vorlage mit einem Microsoft-Konto aktiviert ist oder nicht. Wenn die MSA-Synchronisierung für einen Benutzer auf einem Computer aktiviert ist, wird diese Vorlage automatisch deaktiviert.
DeferToOffice365 Ähnlich wie MSA steuert dies, ob diese Vorlage mit Office365 aktiviert ist. Wenn Office 365 zum Synchronisieren von Einstellungen verwendet wird, wird diese Vorlage automatisch deaktiviert.
FixedProfile Gibt an, dass diese Vorlage nur dem in diesem Element angegebenen Profil zugeordnet und nicht über WMI oder PowerShell geändert werden kann.
Prozesse Ein Container für eine Auflistung von einem oder mehreren Process-Elementen. Weitere Informationen finden Sie unter Prozesse.
Einstellungen Ein Container für alle Einstellungen, die für eine bestimmte Vorlage gelten. Sie enthält Instanzen der Einstellungen Registry, File, SystemParameter und CustomAction. Weitere Informationen finden Sie unter Einstellungen in Datentypen.

Common-Element

Common ähnelt einem Application-Element, ist aber immer zwei oder mehr Application-Elementen zugeordnet. Der Abschnitt Allgemein stellt den Satz von Einstellungen dar, die von diesen Anwendungsinstanzen gemeinsam verwendet werden. Es handelt sich um eine Auflistung der folgenden Felder/Typen.

Feld/Typ Beschreibung
Name Gibt einen eindeutigen Namen für die Einstellungsspeicherortvorlage an. Dies wird zu Anzeigezwecken verwendet, wenn auf die Vorlage in WMI, PowerShell, Ereignisanzeige und Debugprotokollen verwiesen wird. Weitere Informationen finden Sie unter Name.
ID Füllt einen eindeutigen Bezeichner für eine bestimmte Vorlage auf. Dieses Tag wird zum primären Bezeichner, den der UE-V-Agent verwendet, um zur Laufzeit auf die Vorlage zu verweisen. Weitere Informationen finden Sie unter ID.
Beschreibung Eine optionale Beschreibung der Vorlage.
LocalizedNames Ein optionaler Name, der auf der Benutzeroberfläche angezeigt wird, lokalisiert durch ein Sprachgebietsschema.
LocalizedDescriptions Eine optionale Vorlagenbeschreibung, die durch ein Sprachgebietsschema lokalisiert wird.
Version Gibt die Version der Einstellungsspeicherortvorlage für die administrative Nachverfolgung von Änderungen an. Weitere Informationen finden Sie unter Version.
DeferToMSAccount Steuert, ob diese Vorlage mit einem Microsoft-Konto aktiviert ist oder nicht. Wenn die MSA-Synchronisierung für einen Benutzer auf einem Computer aktiviert ist, wird diese Vorlage automatisch deaktiviert.
DeferToOffice365 Ähnlich wie MSA steuert dies, ob diese Vorlage mit Office365 aktiviert ist. Wenn Office 365 zum Synchronisieren von Einstellungen verwendet wird, wird diese Vorlage automatisch deaktiviert.
FixedProfile Gibt an, dass diese Vorlage nur dem in diesem Element angegebenen Profil zugeordnet und nicht über WMI oder PowerShell geändert werden kann.
Einstellungen Ein Container für alle Einstellungen, die für eine bestimmte Vorlage gelten. Sie enthält Instanzen der Einstellungen Registry, File, SystemParameter und CustomAction. Weitere Informationen finden Sie unter Einstellungen in Datentypen.

SettingsLocationTemplate-Element

Dieses Element definiert die Einstellungen für eine einzelne Anwendung oder eine Suite von Anwendungen.

Feld/Typ Beschreibung
Name Gibt einen eindeutigen Namen für die Einstellungsspeicherortvorlage an. Dies wird zu Anzeigezwecken verwendet, wenn auf die Vorlage in WMI, PowerShell, Ereignisanzeige und Debugprotokollen verwiesen wird. Weitere Informationen finden Sie unter Name.
ID Füllt einen eindeutigen Bezeichner für eine bestimmte Vorlage auf. Dieses Tag wird zum primären Bezeichner, den der UE-V-Agent verwendet, um zur Laufzeit auf die Vorlage zu verweisen. Weitere Informationen finden Sie unter ID.
Beschreibung Eine optionale Beschreibung der Vorlage.
LocalizedNames Ein optionaler Name, der auf der Benutzeroberfläche angezeigt wird, lokalisiert durch ein Sprachgebietsschema.
LocalizedDescriptions Eine optionale Vorlagenbeschreibung, die durch ein Sprachgebietsschema lokalisiert wird.

Anhang: SettingsLocationTemplate.xsd

Hier sehen Sie die Datei SettingsLocationTemplate.xsd mit ihren Elementen, untergeordneten Elementen, Attributen und Parametern:

<?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>

Arbeiten mit benutzerdefinierten UE-V 2.1 SP1-Vorlagen und dem UE-V 2.1 SP1-Generator

Technische Referenz für UE-V 2.1 SP1