Referencia del esquema de la plantilla de aplicación para UE-V (Windows 10)

Virtualización de la experiencia del usuario (UE-V) usa plantillas de ubicación de configuración XML para definir la configuración de la aplicación de escritorio y la configuración de Windows que UE-V captura y aplica. UE-V incluye un conjunto de plantillas de ubicación de configuración predeterminadas. También puedes crear plantillas de ubicación de configuración personalizadas con el generador de plantillas de UE-V.

Un usuario avanzado puede personalizar el archivo XML de una plantilla de ubicación de configuración. En este tema se detalla la estructura XML de las plantillas de ubicación de configuración de UE-V y se proporcionan instrucciones para editar estos archivos.

Referencia de esquema de la plantilla de aplicación de UE-V

En esta sección se detalla la estructura XML de la plantilla de ubicación de configuración de UE-V y se proporcionan instrucciones para editar este archivo.

En esta sección

Atributo de codificación y declaración XML

Obligatorio: TrueType: String

La declaración XML debe especificar el atributo XML versión 1.0 (<?xml version="1.0").> Las plantillas de ubicación de configuración creadas por el generador de plantillas de UE-V se guardan con codificación UTF-8, aunque la codificación no se especifica explícitamente. Se recomienda incluir el atributo encoding="UTF-8" en este elemento como práctica recomendada. Todas las plantillas incluidas con el producto también especifican esta etiqueta (consulte los documentos en %ProgramFiles%\Virtualización de la experiencia del usuario de Microsoft\Plantillas para obtener referencia). Por ejemplo:

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

Espacio de nombres y elemento raíz

Obligatorio: TrueType: String

UE-V usa el https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate espacio de nombres para todas las aplicaciones. SettingsLocationTemplate es el elemento raíz y contiene todos los demás elementos. Haga referencia a SettingsLocationTemplate en todas las plantillas que usen esta etiqueta:

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

Tipos de datos

Estos tipos de datos son los del esquema de plantilla de aplicación de UE-V.

GUID El GUID describe una expresión regular de identificador único y global estándar con la forma "\{[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}\}". Este GUID se usa en el elemento Filesetting\Root\KnownFolder para comprobar el formato de carpetas conocidas.

FilenameString FilenameString hace referencia al nombre de archivo de un proceso que se va a supervisar. Sus valores están restringidos por la expresión regular [^\\\?\*\|<>/:]+, (es decir, no pueden contener caracteres de barra diagonal inversa, asterisco o signo de interrogación, caracteres comodín, el carácter de barra vertical, el signo mayor o menor que, la barra diagonal o los dos puntos).

IDString IDString hace referencia al valor de identificador de los elementos de la aplicación, SettingsLocationTemplate y los elementos comunes (se usa para describir los conjuntos de aplicaciones que comparten configuraciones comunes). Está restringido por la misma expresión regular que FilenameString ([^\\\?\*\|<>/:]+).

TemplateVersion TemplateVersion es un valor entero que se usa para describir la revisión de la plantilla de ubicación de configuración. Su valor puede oscilar entre 0 y 2147483647.

Vacío Vacío hace referencia a un valor nulo. Este tipo de datos se usa en Process\ShellProcess para indicar que no hay ningún proceso que supervisar. Este valor no debe usarse en ninguna plantilla de aplicación.

Autor El tipo de datos Autor es un tipo complejo que identifica al autor de una plantilla. Contiene dos elementos secundarios: Nombre y Email. Dentro del tipo de datos Autor, el elemento Nombre es obligatorio mientras que el elemento Email es opcional. Este tipo se describe con más detalle en el elemento SettingsLocationTemplate.

Rango El rango define una clase entera que consta de dos elementos secundarios: Mínimo y Máximo. Este tipo de datos se implementa en el tipo de datos ProcessVersion. Si se especifica, se deben incluir los valores Mínimo y Máximo.

ProcessVersion ProcessVersion define un tipo con cuatro elementos secundarios: principal, secundario, compilación y revisión. El elemento Process usa este tipo de datos para rellenar sus valores ProductVersion y FileVersion. Los datos de este tipo son un valor de intervalo. El elemento secundario principal es obligatorio y los demás son opcionales.

Arquitectura Architecture enumera dos valores posibles: Win32 y Win64. Estos valores se utilizan para especificar la arquitectura del proceso.

Proceso El tipo de datos Proceso es un contenedor que se usa para describir los procesos que UE-V va a supervisar. Contiene seis elementos secundarios: Filename, Architecture, ProductName, FileDescription, ProductVersion y FileVersion. En esta tabla se detalla el tipo de datos respectivo de cada elemento:

Elemento Tipo de datos Mandatory
Nombre de archivo FilenameString Verdadero
Arquitectura Arquitectura Falso
ProductName Cadena Falso
Descripción del archivo Cadena Falso
ProductVersion ProcessVersion Falso
FileVersion ProcessVersion Falso

Procesos El tipo de datos Procesos representa un contenedor para una colección de uno o más elementos de proceso. Se admiten dos elementos secundarios en el tipo de secuencia Procesos: Process y ShellProcess. Process es un elemento de tipo Process y ShellProcess es de tipo de datos Empty. Se debe identificar al menos un elemento en la secuencia.

Ruta de acceso RegistrySetting y FileSetting consumen la ruta de acceso para hacer referencia a las rutas de acceso del registro y de los archivos. Este elemento admite dos atributos opcionales: Recursive y DeleteIfNotFound. Ambos valores se establecen en default="False".

Recursivo indica que la ruta de acceso y todas las subcarpetas están incluidas para la configuración de archivos o que todas las claves del Registro secundarias están incluidas para la configuración del registro. En ambos casos, todos los elementos del nivel actual se incluyen en los datos capturados. Para un objeto FileSettings, todos los archivos de la carpeta especificada se incluyen en los datos capturados por UE-V, pero las carpetas no se incluyen. Para las rutas de acceso del Registro, se capturan todos los valores de la ruta de acceso actual, pero no se capturan las claves del Registro secundarias. En ambos casos, se debe tener cuidado de evitar capturar grandes conjuntos de datos o un gran número de elementos.

El atributo DeleteIfNotFound quita la configuración de los datos de la ruta de acceso de almacenamiento de la configuración del usuario. Esta eliminación puede ser deseable en los casos en los que quitar esta configuración del paquete ahorraría una gran cantidad de espacio en disco en el servidor de archivos de la ruta de acceso de almacenamiento de la configuración.

Máscara de archivo Máscara de archivo especifica solo ciertos tipos de archivo para la carpeta definida por Ruta de acceso. Por ejemplo, Path podría ser C:\users\username\files y FileMask podría ser *.txt para incluir solo archivos de texto.

RegistrySetting RegistrySetting representa un contenedor de claves y valores del Registro y el comportamiento deseado asociado por parte del servicio UE-V. Este tipo define cuatro elementos secundarios: Ruta de acceso, Nombre, Excluir y una secuencia de los valores Ruta de acceso y Nombre.

FileSetting FileSetting contiene parámetros asociados con archivos y rutas de acceso de archivos. Se definen cuatro elementos secundarios: Raíz, Ruta de acceso, Máscara de archivo y Excluir. Root es obligatorio y los demás son opcionales.

Configuración Configuración es un contenedor para todas las opciones de configuración que se aplican a una plantilla en particular. Contiene instancias de la configuración Registry, File, SystemParameter y CustomAction descrita anteriormente. Además, puede contener los siguientes elementos secundarios con comportamientos descritos:

Elemento Descripción
Asincrónico Los paquetes de configuración asincrónica se aplican sin bloquear el inicio de la aplicación, de modo que el inicio de la aplicación continúa mientras se sigue aplicando la configuración. Este elemento es útil para la configuración que se puede aplicar de forma asincrónica, como la configuración get/set a través de una API, como SystemParameterSetting.
PreventOverlappingSynchronization De forma predeterminada, UE-V solo guarda la configuración de una aplicación cuando se cierra la última instancia de una aplicación que usa la plantilla. Cuando este elemento se establece en "false", UE-V exporta la configuración incluso si se están ejecutando otras instancias de una aplicación. Las plantillas adecuadas (aquellas plantillas que incluyen una sección de elemento común) que se envían con UE-V usan esta marca para permitir que la configuración compartida se exporte siempre al cerrar la aplicación, a la vez que evita que la configuración específica de la aplicación se exporte hasta que se cierre la última instancia.
AlwaysApplySettings Este parámetro fuerza la aplicación de un paquete de configuración importado incluso si no hay diferencias entre el paquete y el estado actual de la aplicación. Este parámetro debe usarse solo en casos especiales, ya que puede ralentizar la importación de la configuración.

Nombre Elemento

Obligatorio: TrueType: String

El nombre especifica un nombre único para la plantilla de ubicación de configuración. Este nombre se usa para mostrar al hacer referencia a la plantilla en WMI, PowerShell, el Visor de eventos y los registros de depuración. En general, evita hacer referencia a la información de la versión, ya que esta referencia se puede objetar desde el elemento ProductVersion. Por ejemplo, especifique <Name>My Application</Name> en lugar de <Name>My Application 1.1</Name>.

Nota

UE-V no hace referencia a DTD externas, por lo que no es posible usar entidades con nombre en una plantilla de ubicación de configuración. Por ejemplo, no utilice ® para hacer referencia al signo ® de marca registrada . En su lugar, use referencias numeradas canónicas para incluir estos tipos de caracteres especiales, por ejemplo, ® para el ® carácter. Esta regla se aplica a todos los valores de cadena de este documento.

Consulte http://www.w3.org/TR/xhtml1/dtds.html para obtener una lista completa de entidades de personajes. Los documentos codificados en UTF-8 pueden incluir los caracteres Unicode directamente. Al guardar plantillas a través del generador de plantillas de UE-V, las entidades de caracteres se convierten automáticamente en sus representaciones Unicode.

Elemento de identificador

Obligatorio: TrueType: String

Identificador rellena un identificador único para una plantilla en particular. Esta etiqueta se convierte en el identificador principal que usa el servicio UE-V para hacer referencia a la plantilla en tiempo de ejecución (por ejemplo, ver la salida de la Get-UevTemplate y Get-UevTemplateProgram cmdlets de PowerShell). Por convención, esta etiqueta no debe contener espacios, lo que simplifica el scripting. Los números de versión de las aplicaciones deben especificarse en este elemento para permitir una fácil identificación de la plantilla, como <ID>MicrosoftOffice2016Win64</ID>.

Elemento de versión

Obligatorio: VerdaderoTipo: EnteroValor mínimo: 0Valor máximo: 2147483647

Version identifica la versión de la plantilla de ubicación de configuración para el seguimiento administrativo de los cambios. El generador de plantillas de UE-V incrementa automáticamente este número en uno cada vez que se guarda la plantilla. Observe que este campo debe ser un número entero entero; valores fraccionarios, tales como <Version>2.5</Version> "no se permiten".

Sugerencia

Puede guardar notas sobre los cambios de versión mediante etiquetas <!-- -->de comentario XML , por ejemplo:

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

Importante

Este valor se consulta para determinar si se debe aplicar una nueva versión de una plantilla a una plantilla existente en estos casos:

  • Cuando se ejecuta la tarea de actualización automática de plantilla programada
  • Cuando se ejecuta el cmdlet de PowerShell de Update-UevTemplate
  • Cuando se llama al método de actualización microsoft\uev:SettingsLocationTemplate a través de WMI

Elemento de autor

Obligatorio: FalsoTipo: Cadena

El autor identifica el creador de la plantilla de ubicación de configuración. Se admiten dos elementos secundarios opcionales: Nombre y Email. Ambos atributos son opcionales, pero, si se especifica el elemento secundario Email, debe ir acompañado del elemento Name. El autor hace referencia al nombre completo del contacto para la plantilla de ubicación de configuración, y el correo electrónico debe hacer referencia a una dirección de correo electrónico del autor. Le recomendamos que incluya esta información en las plantillas publicadas públicamente.

Procesos y elemento de proceso

Obligatorio: TrueType: Element

Los procesos contienen al menos un <Process> elemento, el cual a su vez contiene los siguientes elementos secundarios: Filename, Architecture, ProductName, FileDescription, ProductVersion y FileVersion. El elemento secundario Filename es obligatorio y los demás son opcionales. Un elemento completamente rellenado contiene etiquetas similares a las de este ejemplo:

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

Nombre de archivo

Obligatorio: TrueType: String

El nombre de archivo hace referencia al nombre de archivo real del ejecutable tal como aparece en el sistema de archivos. Este elemento especifica el criterio principal que UE-V usa para evaluar si una plantilla se aplica a un proceso o no. Este elemento debe especificarse en el XML de la plantilla de ubicación de configuración.

Los nombres de archivo válidos no deben coincidir con la expresión regular [^\\\?\*\|<>/:]+, es decir, no pueden contener caracteres de barra diagonal inversa, asterisco o signo de interrogación, caracteres comodín, el carácter de barra vertical, el signo mayor o menor que, la barra diagonal o dos puntos (los caracteres \ ? * | <> / o : .).

Sugerencia

Para probar una cadena con esta expresión regular, use una ventana de comandos de PowerShell y sustituya el nombre de su ejecutable por YourFileName:

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

Un valor de True indica que la cadena contiene caracteres no válidos. Estos son algunos ejemplos de valores ilegales:

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

Nota

El generador de plantillas UE-V codifica los caracteres mayor y menor que como > y < respectivamente.

En raras circunstancias, el valor FileName no incluirá necesariamente la extensión .exe, pero se debe especificar como parte del valor. Por ejemplo, <Filename>MyApplication.exe</Filename> debe especificarse en lugar de <Filename>MyApplication</Filename>. El segundo ejemplo no aplicará la plantilla al proceso si el nombre real del archivo ejecutable es "MyApplication.exe".

Arquitectura

Obligatorio: FalsoTipo: Arquitectura (cadena)

La arquitectura hace referencia a la arquitectura del procesador para la que se compiló el ejecutable de destino. Los valores válidos son Win32 para aplicaciones de 32 bits o Win64 para aplicaciones de 64 bits. Si está presente, esta etiqueta limita la aplicabilidad de la plantilla de ubicación de configuración a una arquitectura de aplicación determinada. Para obtener un ejemplo de esta restricción de aplicabilidad, compara los archivos %ProgramFiles%\Virtualización de la experiencia del usuario de Microsoft\templates\ MicrosoftOffice2016Win32.xml y MicrosoftOffice2016Win64.xml incluidos con UE-V. Esta restricción de aplicabilidad es útil cuando las rutas de acceso relativas cambian entre diferentes versiones de un ejecutable o si se han agregado o quitado configuraciones al pasar de una arquitectura de procesador a otra.

Si este elemento está ausente, la plantilla de ubicación de configuración ignora la arquitectura del proceso y se aplica a los procesos de 32 bits y 64 bits si se aplican el nombre de archivo y otros atributos.

Nota

UE-V no admite procesadores ARM en esta versión.

ProductName

Obligatorio: FalsoTipo: Cadena

ProductName es un elemento opcional que se usa para identificar un producto con fines administrativos o de informes. ProductName se diferencia de Filename en que no hay restricciones de expresión regular en su valor. Esta flexibilidad permite descripciones más fáciles de entender de un proceso en las que el nombre ejecutable puede no ser obvio. Por ejemplo:

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

Descripción del archivo

Obligatorio: FalsoTipo: Cadena

FileDescription es una etiqueta opcional que permite una descripción administrativa del archivo ejecutable. Esta etiqueta es un campo de texto libre y puede ser útil para distinguir múltiples ejecutables dentro de un paquete de software donde es necesario identificar la función del ejecutable.

Por ejemplo, en una aplicación adecuada, podría ser útil proporcionar recordatorios sobre la función de dos ejecutables (MyApplication.exe y MyApplicationHelper.exe), como se muestra aquí:

<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

Obligatorio: FalsoTipo: Cadena

ProductVersion hace referencia a las versiones principales y secundarias del producto de un archivo, así como a nivel de compilación y revisión. ProductVersion es un elemento opcional, pero, si se especifica, debe contener al menos el elemento secundario Major. El valor debe expresar un intervalo con la forma Minimum="X", Maximum="Y", donde X e Y son enteros. Los valores de Mínima y Máxima pueden ser idénticos.

Los elementos de la versión del producto y del archivo pueden dejarse sin especificar. Si lo hace, la plantilla será "independiente de la versión", lo que significa que la plantilla se aplicará a todas las versiones del ejecutable especificado.

Ejemplo 1:

Versión del producto: 1.0 especificada en el generador de plantillas de UE-V produce el siguiente XML:

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

Ejemplo 2:

Versión del archivo: 5.0.2.1000 especificada en el generador de plantillas de UE-V produce el siguiente XML:

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

Ejemplo incorrecto 1 - rango incompleto:

Solo está presente el atributo Minimum. El máximo debe incluirse también en un intervalo.

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

Ejemplo 2 incorrecto - Elemento menor especificado sin elemento principal:

Solo está presente el elemento Minor. También se debe incluir una especialización.

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

FileVersion

Obligatorio: FalsoTipo: Cadena

FileVersion diferencia entre la versión de lanzamiento de una aplicación publicada y los detalles de compilación internos de un ejecutable de componente. Para la mayoría de las aplicaciones comerciales, estos números son idénticos. Cuando varían, la versión del producto de un archivo indica una identificación genérica de la versión de un archivo, mientras que la versión de archivo indica una compilación específica de un archivo (como en el ejemplo de una revisión o actualización). Esta versión del archivo identifica los archivos de forma única sin romper la lógica de detección.

Para determinar la versión del producto y la versión del archivo de un ejecutable determinado, haga clic con el botón derecho en el archivo en el Explorador de Windows, seleccione Propiedades y haga clic en la pestaña Detalles.

Incluir un elemento FileVersion para una aplicación permite ajustar la lógica de detección de forma más detallada, pero no es necesario para la mayoría de las aplicaciones. Primero se comprueba la configuración del elemento ProductVersion y, después, se comprueba FileVersion. Se aplicará la configuración más restrictiva.

Los elementos secundarios y las reglas de sintaxis de FileVersion son idénticos a los elementos y reglas 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>

Elemento de aplicación

La aplicación es un contenedor para la configuración que se aplica a una aplicación determinada. Es una colección de los siguientes campos o tipos.

Campo/Tipo Descripción
Name Especifica un nombre único para la plantilla de ubicación de configuración. Este nombre se usa para mostrar al hacer referencia a la plantilla en WMI, PowerShell, el Visor de eventos y los registros de depuración. Para obtener más información, vea Nombre.
ID Rellena un identificador único para una plantilla determinada. Esta etiqueta se convierte en el identificador principal que usa el servicio UE-V para hacer referencia a la plantilla en tiempo de ejecución. Para obtener más información, vea ID.
Descripción Una descripción opcional de la plantilla.
LocalizedNames Un nombre opcional que se muestra en la interfaz de usuario, localizado por la configuración regional de un idioma.
LocalizedDescriptions Una descripción de plantilla opcional localizada por una configuración regional de idioma.
Versión Identifica la versión de la plantilla de ubicación de configuración para el seguimiento administrativo de los cambios. Para obtener más información, consulte Versión.
DeferToMSAccount Controla si esta plantilla está habilitada junto con una cuenta de Microsoft o no. Si la sincronización de MSA está habilitada para un usuario en un equipo, esta plantilla se deshabilitará automáticamente.
DeferToOffice365 Similar a MSA, este tipo controla si esta plantilla está habilitada junto con Office361. Si se usa Office 365 para sincronizar la configuración, esta plantilla se deshabilitará automáticamente.
Perfil fijo Especifica que esta plantilla solo se puede asociar con el perfil especificado en este elemento y no se puede cambiar a través de WMI o PowerShell.
Procesos contenedor para una colección de uno o más elementos de proceso. Para obtener más información, consulte Procesos.
Configuración Contenedor de todas las configuraciones que se aplican a una plantilla determinada. Contiene instancias de la configuración Registry, File, SystemParameter y CustomAction. Para obtener más información, vea Configuración en tipos de datos".

Elemento común

Común es similar a un elemento de aplicación, pero siempre está asociado a dos o más elementos de aplicación. La sección Común representa el conjunto de configuraciones que se comparten entre esas instancias de la Aplicación. Es una colección de los siguientes campos o tipos.

Campo/Tipo Descripción
Name Especifica un nombre único para la plantilla de ubicación de configuración. Este nombre se usa para mostrar al hacer referencia a la plantilla en WMI, PowerShell, el Visor de eventos y los registros de depuración. Para obtener más información, vea Nombre.
ID Rellena un identificador único para una plantilla determinada. Esta etiqueta se convierte en el identificador principal que usa el servicio UE-V para hacer referencia a la plantilla en tiempo de ejecución. Para obtener más información, vea ID.
Descripción Una descripción opcional de la plantilla.
LocalizedNames Un nombre opcional que se muestra en la interfaz de usuario, localizado por la configuración regional de un idioma.
LocalizedDescriptions Una descripción de plantilla opcional localizada por una configuración regional de idioma.
Versión Identifica la versión de la plantilla de ubicación de configuración para el seguimiento administrativo de los cambios. Para obtener más información, consulte Versión.
DeferToMSAccount Controla si esta plantilla está habilitada junto con una cuenta de Microsoft o no. Si la sincronización de MSA está habilitada para un usuario en un equipo, esta plantilla se deshabilitará automáticamente.
DeferToOffice365 Similar a MSA, este tipo controla si esta plantilla está habilitada junto con Office361. Si se usa Office 365 para sincronizar la configuración, esta plantilla se deshabilitará automáticamente.
Perfil fijo Especifica que esta plantilla solo se puede asociar con el perfil especificado en este elemento y no se puede cambiar a través de WMI o PowerShell.
Configuración Contenedor de todas las configuraciones que se aplican a una plantilla determinada. Contiene instancias de la configuración Registry, File, SystemParameter y CustomAction. Para obtener más información, vea Configuración en Tipos de datos.

Elemento SettingsLocationTemplate

Este elemento define la configuración para una sola aplicación o un conjunto de aplicaciones.

Campo/Tipo Descripción
Name Especifica un nombre único para la plantilla de ubicación de configuración. Este tipo se usa con fines de visualización al hacer referencia a la plantilla en los registros de WMI, PowerShell, Visor de eventos y Depuración. Para obtener más información, vea Nombre.
ID Rellena un identificador único para una plantilla determinada. Esta etiqueta se convierte en el identificador principal que usa el servicio UE-V para hacer referencia a la plantilla en tiempo de ejecución. Para obtener más información, vea ID.
Descripción Una descripción opcional de la plantilla.
LocalizedNames Un nombre opcional que se muestra en la interfaz de usuario, localizado por la configuración regional de un idioma.
LocalizedDescriptions Una descripción de plantilla opcional localizada por una configuración regional de idioma.

Apéndice: SettingsLocationTemplate.xsd

Aquí está el archivo SettingsLocationTemplate.xsd que muestra sus elementos, elementos secundarios, atributos y parámetros:

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

Trabajar con plantillas personalizadas de UE-V y el generador de plantillas de UE-VReferencia técnica de UE-V