Справочник по схеме шаблона приложения для UE-V (Windows 10)
Виртуализация взаимодействия с пользователем (UE-V) использует шаблоны расположения параметров XML для определения параметров рабочего стола и параметров Windows, которые записываются и применяются UE-V. UE-V включает набор шаблонов расположения параметров по умолчанию. Вы также можете создавать настраиваемые шаблоны расположения параметров с помощью генератора шаблонов UE-V.
Опытный пользователь может настроить XML-файл для шаблона расположения параметров. В этом разделе подробно описана XML-структура шаблонов расположения параметров UE-V и приводятся рекомендации по редактированию этих файлов.
Справочник по схеме шаблона приложения UE-V
В этом разделе описывается XML-структура шаблона расположения параметров UE-V и приводятся рекомендации по редактированию этого файла.
В этом разделе
- Атрибут объявления и кодирования XML
- Пространство имен и корневой элемент
- Типы данных
- Элемент Name
- Элемент ID
- Элемент Version
- Элемент Author
- Processes and Process Element
- Элемент Application
- Элемент Common
- Элемент SettingsLocationTemplate
- Приложение: SettingsLocationTemplate.xsd
Атрибут объявления и кодирования XML
Обязательный: TrueТип: Строка
В объявлении XML должен быть указан атрибут XML версии 1.0 (<?xml version="1.0">). Шаблоны расположения параметров, созданные генератором шаблонов UE-V, сохраняются в кодировке UTF-8, хотя кодировка явно не указана. Рекомендуется включить атрибут encoding="UTF-8" в этот элемент, как рекомендуется. Все шаблоны, включенные в продукт, также указывают этот тег (см. документы в %ProgramFiles%\Виртуализация средств взаимодействия с пользователем (Майкрософт)\Templates для справки). Пример:
<?xml version="1.0" encoding="UTF-8"?>
Пространство имен и корневой элемент
Обязательный: TrueТип: Строка
UE-V использует https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate
пространство имен для всех приложений. SettingsLocationTemplate является корневым элементом и содержит все остальные элементы. Ссылки ПараметрыLocationTemplate во всех шаблонах с помощью этого тега:
<SettingsLocationTemplate xmlns='https://schemas.microsoft.com/UserExperienceVirtualization/2012/SettingsLocationTemplate'>
Типы данных
Эти типы данных относятся к схеме шаблона приложения UE-V.
GUID GUID описывает стандартное глобально уникальное регулярное выражение идентификатора в виде "\{[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}\}. Этот GUID используется в элементе Filesetting\Root\KnownFolder для проверки форматирования хорошо известных папок.
FilenameString FilenameString ссылается на имя файла процесса, который необходимо отслеживать. Его значения ограничены регулярным выражением [^\\\?\\*\|<>/:]+, (то есть они не могут содержать символы обратной косой черты, звездочки или вопросительного знака wild-карта символы, символы конвейера, символы больше или меньше знака, косой черты или двоеточия).
IDString IDString — это значение идентификатора элементов Application, SettingsLocationTemplate и Common (используется для описания наборов приложений с общими параметрами). Он ограничен тем же регулярным выражением, что и FilenameString ([^\\\?\*\|<>/:]+).
TemplateVersion TemplateVersion — это целочисленное значение, используемое для описания редакции шаблона расположения параметров. Его значение может варьироваться от 0 до 2147483647.
Пустой Пустой означает значение NULL. Этот тип данных используется в Process\ShellProcess, чтобы указать на отсутствие процесса для мониторинга. Это значение не следует использовать ни в каких шаблонах приложений.
Автор Тип данных Author — это сложный тип, который определяет автора шаблона. Он содержит два дочерних элемента: Name и Email. В типе данных Author элемент Name является обязательным, а элемент Email является необязательным. Этот тип описан более подробно в элементе SettingsLocationTemplate.
Диапазон Range определяет целочисленный класс, состоящий из двух дочерних элементов: Minimum и Maximum. Этот тип данных реализован в типе данных ProcessVersion. Если задано значение , необходимо включить значения Минимальное и Максимальное.
ProcessVersion ProcessVersion определяет тип с четырьмя дочерними элементами: Основной, Дополнительный, Сборка и Исправление. Этот тип данных используется элементом Process для заполнения значений ProductVersion и FileVersion. Данные для этого типа являются значением Range. Основной дочерний элемент является обязательным, а остальные — необязательным.
Архитектура Архитектура перечисляет два возможных значения: Win32 и Win64. Эти значения используются для указания архитектуры процесса.
Процесс Тип данных Process — это контейнер, используемый для описания процессов, отслеживаемых UE-V. Он содержит шесть дочерних элементов: Filename, Architecture, ProductName, FileDescription, ProductVersion и FileVersion. В этой таблице подробно описаны соответствующие типы данных каждого элемента:
Элемент | Тип данных | Обязательное |
---|---|---|
Имени файла | FilenameString | True |
Architecture (Архитектура) | Architecture (Архитектура) | False |
ProductName | Строка | False |
FileDescription | Строка | False |
ProductVersion | ProcessVersion | False |
FileVersion | ProcessVersion | False |
Процессов Тип данных Processes представляет контейнер для коллекции из одного или нескольких элементов Process. В типе последовательности процессов поддерживаются два дочерних элемента: Process и ShellProcess. Process — это элемент типа Process, а shellProcess имеет тип данных Empty. В последовательности должен быть определен по крайней мере один элемент.
Путь Путь используется RegistrySetting и FileSetting для ссылки на пути к реестру и файлам. Этот элемент поддерживает два необязательных атрибута: Recursive и DeleteIfNotFound. Для обоих значений задано значение default="False".
Рекурсивный указывает, что путь и все вложенные папки включены для параметров файла или что для параметров реестра включены все дочерние разделы реестра. В обоих случаях все элементы на текущем уровне включаются в захваченные данные. Для объекта FileSettings все файлы в указанной папке включаются в данные, захваченные UE-V, но папки не включаются. Для путей реестра все значения в текущем пути записываются, но дочерние разделы реестра не записываются. В обоих случаях следует соблюдать осторожность, чтобы избежать записи больших наборов данных или большого количества элементов.
Атрибут DeleteIfNotFound удаляет параметр из данных пути к хранилищу параметров пользователя. Это удаление может оказаться желательным в тех случаях, когда удаление этих параметров из пакета сэкономит большой объем дискового пространства на файловом сервере хранилища параметров.
FileMask FileMask указывает только определенные типы файлов для папки, определенной путем. Например, Путь может иметь значение C:\users\username\files
, а FileMask — *.txt
для включения только текстовых файлов.
RegistrySetting RegistrySetting представляет контейнер для разделов и значений реестра и соответствующего требуемого поведения со стороны службы UE-V. В этом типе определены четыре дочерних элемента: Path, Name, Exclude и последовательность значений Path и Name.
FileSetting FileSetting содержит параметры, связанные с файлами и путями к файлам. Определены четыре дочерних элемента: Root, Path, FileMask и Exclude. Root является обязательным, а остальные — необязательными.
Параметры Параметры — это контейнер для всех параметров, применимых к конкретному шаблону. Он содержит экземпляры параметров Registry, File, SystemParameter и CustomAction, описанных ранее. Кроме того, он также может содержать следующие дочерние элементы с описанным поведением:
Элемент | Описание |
---|---|
Асинхронная репликация | Пакеты асинхронных параметров применяются без блокировки запуска приложения, поэтому запуск приложения продолжается, пока параметры еще применяются. Этот элемент полезен для параметров, которые могут применяться асинхронно, например для получения или задания параметров с помощью API, например SystemParameterSetting. |
PreventOverlappingSynchronization | По умолчанию UE-V сохраняет параметры только для приложения, когда последний экземпляр приложения, использующий шаблон, закрыт. Если для этого элемента задано значение false, UE-V экспортирует параметры, даже если выполняются другие экземпляры приложения. Подходящие шаблоны. Шаблоны, которые содержат раздел элемента Common, поставляемые с UE-V, используют этот флаг, чтобы включить экспорт общих параметров при закрытии приложения, в то же время предотвращая экспорт параметров приложения до закрытия последнего экземпляра. |
AlwaysApplySettings | Этот параметр принудительно применяет импортированный пакет параметров, даже если между пакетом и текущим состоянием приложения нет различий. Этот параметр следует использовать только в особых случаях, так как он может замедлить импорт параметров. |
Элемент Name
Обязательный: TrueТип: Строка
Имя указывает уникальное имя шаблона расположения параметров. Это имя используется для отображения при ссылке на шаблон в журналах WMI, PowerShell, Просмотр событий и отладки. Как правило, избегайте ссылок на сведения о версии, так как эти ссылки могут быть возражать из элемента ProductVersion. Например, укажите <Name>My Application</Name>
вместо <Name>My Application 1.1</Name>
.
Примечание.
UE-V не ссылается на внешние DTD, поэтому невозможно использовать именованные сущности в шаблоне расположения параметров. Например, не используйте ® для ссылки на знак зарегистрированной торговой марки ® . Вместо этого используйте канонические нумерованные ссылки, чтобы включить эти типы специальных символов, например ® для символа ®. Это правило применяется ко всем строковым значениям в этом документе.
Полный список сущностей символов см. в этой статье http://www.w3.org/TR/xhtml1/dtds.html . Документы в кодировке UTF-8 могут содержать символы Юникода напрямую. Сохранение шаблонов с помощью генератора шаблонов UE-V автоматически преобразует сущности символов в их представления в Юникоде.
Элемент ID
Обязательный: TrueТип: Строка
Идентификатор заполняет уникальный идентификатор для определенного шаблона. Этот тег становится основным идентификатором, используемым службой UE-V для ссылки на шаблон во время выполнения (например, см. выходные данные Get-UevTemplate и Get-UevTemplateProgram командлетов PowerShell). По соглашению этот тег не должен содержать пробелы, что упрощает создание скриптов. Номера версий приложений должны быть указаны в этом элементе, чтобы можно было легко идентифицировать шаблон, например <ID>MicrosoftOffice2016Win64</ID>
.
Элемент Version
Обязательный: TrueТип: IntegerMinimum Value: 0Maximum Value: 2147483647
Версия определяет версию шаблона расположения параметров для административного отслеживания изменений. Генератор шаблонов UE-V автоматически увеличивает это число на единицу при каждом сохранении шаблона. Обратите внимание, что это поле должно быть целым числом; дробные значения, например <Version>2.5</Version>
, не допускаются.
Совет
Заметки об изменениях версий можно сохранять с помощью тегов комментариев <!-- -->
XML, например:
<!--
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>
Важно.
Это значение запрашивается, чтобы определить, следует ли применять новую версию шаблона к существующему шаблону в следующих экземплярах:
- При выполнении запланированной задачи автоматического обновления шаблона
- При выполнении командлета PowerShell Update-UevTemplate
- Когда метод microsoft\uev:SettingsLocationTemplate Update вызывается через WMI
Элемент Author
Обязательный: FalseТип: Строка
Автор определяет создателя шаблона расположения параметров. Поддерживаются два необязательных дочерних элемента: Name и Email. Оба атрибута являются необязательными, но если указан Email дочерний элемент, он должен сопровождаться элементом Name. Автор ссылается на полное имя контакта для шаблона расположения параметров, а адрес электронной почты должен ссылаться на адрес электронной почты автора. Рекомендуется включить эти сведения в шаблоны, опубликованные в общедоступном формате.
Processes and Process Element
Обязательный: TrueТип: Элемент
Процессы содержат по крайней мере один <Process>
элемент, который, в свою очередь, содержит следующие дочерние элементы: Filename, Architecture, ProductName, FileDescription, ProductVersion и FileVersion. Дочерний элемент Filename является обязательным, а остальные — необязательными. Полностью заполненный элемент содержит теги, аналогичные следующему примеру:
<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>
Имени файла
Обязательный: TrueТип: Строка
Имя файла — это фактическое имя файла исполняемого файла, отображаемое в файловой системе. Этот элемент задает основное условие, которое UE-V использует для оценки того, применяется ли шаблон к процессу. Этот элемент должен быть указан в XML-файле шаблона расположения параметров.
Допустимые имена файлов не должны соответствовать регулярному выражению [^\\\?\\|<>/:]+, то есть они не могут содержать символы обратной косой черты, звездочки или вопросительного знака wild-карта символы, символы конвейера, больше или меньше знака, косой черты или двоеточия (\ ? * | <> или : символы.).
Совет
Чтобы протестировать строку для этого регулярного выражения, используйте командное окно PowerShell и замените имя исполняемого файла именем YourFileName:
"YourFileName.exe" -match "[\\\?\*\|<>/:]+"
Значение True указывает, что строка содержит недопустимые символы. Ниже приведены некоторые примеры недопустимых значений.
- \\server\share\program.exe
- Программа*.exe
- Pro?ram.exe
- Программа<1>.exe
Примечание.
Генератор шаблонов UE-V кодирует символы больше и меньше символов >< соответственно.
В редких случаях значение FileName не обязательно будет включать расширение .exe, но оно должно быть указано как часть значения. Например, <Filename>MyApplication.exe</Filename>
следует указать вместо <Filename>MyApplication</Filename>
. Во втором примере шаблон не применяется к процессу, если фактическое имя исполняемого файла — "MyApplication.exe".
Architecture (Архитектура)
Обязательный: FalseТип: Архитектура (строка)
Архитектура относится к архитектуре процессора, для которой был скомпилирован целевой исполняемый файл. Допустимые значения: Win32 для 32-разрядных приложений или Win64 для 64-разрядных приложений. Если он имеется, этот тег ограничивает применимость шаблона расположения параметров к определенной архитектуре приложения. В качестве примера этого ограничения применимости сравните файлы %ProgramFiles%\Виртуализация средств взаимодействия с пользователем (Майкрософт)\templates\ MicrosoftOffice2016Win32.xml и MicrosoftOffice2016Win64.xml, включенные в UE-V. Это ограничение применимости полезно, если относительные пути изменяются между разными версиями исполняемого файла или если параметры были добавлены или удалены при переходе от одной архитектуры процессора к другой.
Если этот элемент отсутствует, шаблон расположения параметров игнорирует архитектуру процесса и применяется как к 32-разрядным, так и к 64-разрядным процессам, если применяются имя файла и другие атрибуты.
Примечание.
UE-V не поддерживает процессоры ARM в этой версии.
ProductName
Обязательный: FalseТип: Строка
ProductName — это необязательный элемент, используемый для идентификации продукта в целях администрирования или создания отчетов. ProductName отличается от filename тем, что нет ограничений регулярного выражения на его значение. Такая гибкость позволяет легко понять описание процесса, в котором имя исполняемого файла может быть неочевидным. Пример:
<Process>
<Filename>MyApplication.exe</Filename>
<ProductName>My Application 6.x by Contoso.com</ProductName>
<ProductVersion>
<Major Minimum="6" Maximum="6" />
</ProductVersion>
</Process>
FileDescription
Обязательный: FalseТип: Строка
FileDescription — это необязательный тег, который позволяет использовать административное описание исполняемого файла. Этот тег является свободным текстовым полем и может быть полезен для различения нескольких исполняемых файлов в программном пакете, где необходимо определить функцию исполняемого файла.
Например, в подходящем приложении может быть полезно предоставить напоминания о функции двух исполняемых файлов (MyApplication.exe и MyApplicationHelper.exe), как показано ниже:
<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
Обязательный: FalseТип: Строка
ProductVersion относится к основным и дополнительным версиям продукта файла, а также к уровню сборки и исправлений. ProductVersion является необязательным элементом, но если он указан, он должен содержать по крайней мере дочерний элемент Major. Значение должно выражать диапазон в форме Minimum="X" Maximum="Y", где X и Y являются целыми числами. Значения Минимум и Максимум могут быть идентичными.
Элементы версии продукта и файла могут быть оставлены неуказанными. Это делает шаблон "не зависящим от версии", то есть шаблон будет применяться ко всем версиям указанного исполняемого файла.
Пример 1.
Версия продукта: 1.0, указанная в генераторе шаблонов UE-V, создает следующий XML-код:
<ProductVersion>
<Major Minimum="1" Maximum="1" />
<Minor Minimum="0" Maximum="0" />
</ProductVersion>
Пример 2.
Версия файла: 5.0.2.1000, указанная в генераторе шаблонов UE-V, создает следующий XML-код:
<FileVersion>
<Major Minimum="5" Maximum="5" />
<Minor Minimum="0" Maximum="0" />
<Build Minimum="2" Maximum="2" />
<Patch Minimum="1000" Maximum="1000" />
</FileVersion>
Неправильный пример 1 — неполный диапазон:
Присутствует только атрибут Minimum. Максимальное значение также должно быть включено в диапазон.
<ProductVersion>
<Major Minimum="2" />
</ProductVersion>
Неправильный пример 2. Дополнительный параметр, указанный без элемента Major:
Присутствует только элемент Minor. Майор также должен быть включен.
<ProductVersion>
<Minor Minimum="0" Maximum="0" />
</ProductVersion>
FileVersion
Обязательный: FalseТип: Строка
FileVersion различает версию выпуска опубликованного приложения и сведения о внутренней сборке исполняемого файла компонента. Для большинства коммерческих приложений эти числа идентичны. Если они различаются, версия продукта файла указывает на общую версию файла, а версию файла — конкретную сборку файла (как в примере исправления или обновления). Эта версия файла однозначно идентифицирует файлы без нарушения логики обнаружения.
Чтобы определить версию продукта и версию файла конкретного исполняемого файла, щелкните правой кнопкой мыши файл в Windows Обозреватель, выберите Свойства, а затем перейдите на вкладку Сведения.
Включение элемента FileVersion для приложения позволяет более детально настраивать логику обнаружения, но не требуется для большинства приложений. Сначала проверяются параметры элемента ProductVersion, а затем — FileVersion. Будет применен более строгий параметр.
Дочерние элементы и правила синтаксиса для FileVersion идентичны этим элементам и правилам 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>
Элемент Application
Приложение — это контейнер для параметров, применяемых к конкретному приложению. Это коллекция следующих полей и типов.
Поле или тип | Описание |
---|---|
Name | Задает уникальное имя для шаблона расположения параметров. Это имя используется для отображения при ссылке на шаблон в журналах WMI, PowerShell, Просмотр событий и отладки. Дополнительные сведения см. в разделе Имя. |
ID | Заполняет уникальный идентификатор для определенного шаблона. Этот тег становится основным идентификатором, который служба UE-V использует для ссылки на шаблон во время выполнения. Дополнительные сведения см. в разделе Идентификатор. |
Описание | Необязательное описание шаблона. |
LocalizedNames | Необязательное имя, отображаемое в пользовательском интерфейсе, локализованное языковым стандартом языка. |
Локализованные описания | Необязательное описание шаблона, локализованное языковым стандартом. |
Версия | Определяет версию шаблона расположения параметров для административного отслеживания изменений. Дополнительные сведения см. в разделе Версия. |
DeferToMSAccount | Определяет, включен ли этот шаблон вместе с учетной записью Майкрософт. Если для пользователя на компьютере включена синхронизация MSA, этот шаблон будет автоматически отключен. |
DeferToOffice365 | Как и в случае с MSA, этот тип определяет, включен ли этот шаблон вместе с Office361. Если для синхронизации параметров используется Office 365, этот шаблон будет автоматически отключен. |
FixedProfile | Указывает, что этот шаблон может быть связан только с профилем, указанным в этом элементе, и не может быть изменен с помощью WMI или PowerShell. |
Процессы | Контейнер для коллекции из одного или нескольких элементов Process. Дополнительные сведения см. в разделе Процессы. |
Параметры | Контейнер для всех параметров, применяемых к конкретному шаблону. Он содержит экземпляры параметров Registry, File, SystemParameter и CustomAction. Дополнительные сведения см. в разделе Параметры в типах данных". |
Элемент Common
Common похож на элемент Application, но он всегда связан с двумя или более элементами Application. Раздел Общие представляет набор параметров, которые совместно используются этими экземплярами приложения. Это коллекция следующих полей и типов.
Поле или тип | Описание |
---|---|
Name | Задает уникальное имя для шаблона расположения параметров. Это имя используется для отображения при ссылке на шаблон в журналах WMI, PowerShell, Просмотр событий и отладки. Дополнительные сведения см. в разделе Имя. |
ID | Заполняет уникальный идентификатор для определенного шаблона. Этот тег становится основным идентификатором, который служба UE-V использует для ссылки на шаблон во время выполнения. Дополнительные сведения см. в разделе Идентификатор. |
Описание | Необязательное описание шаблона. |
LocalizedNames | Необязательное имя, отображаемое в пользовательском интерфейсе, локализованное языковым стандартом языка. |
Локализованные описания | Необязательное описание шаблона, локализованное языковым стандартом. |
Версия | Определяет версию шаблона расположения параметров для административного отслеживания изменений. Дополнительные сведения см. в разделе Версия. |
DeferToMSAccount | Определяет, включен ли этот шаблон вместе с учетной записью Майкрософт. Если для пользователя на компьютере включена синхронизация MSA, этот шаблон будет автоматически отключен. |
DeferToOffice365 | Как и в случае с MSA, этот тип определяет, включен ли этот шаблон вместе с Office361. Если для синхронизации параметров используется Office 365, этот шаблон будет автоматически отключен. |
FixedProfile | Указывает, что этот шаблон может быть связан только с профилем, указанным в этом элементе, и не может быть изменен с помощью WMI или PowerShell. |
Параметры | Контейнер для всех параметров, применяемых к конкретному шаблону. Он содержит экземпляры параметров Registry, File, SystemParameter и CustomAction. Дополнительные сведения см. в разделе Параметры в типах данных. |
Элемент SettingsLocationTemplate
Этот элемент определяет параметры для одного приложения или набора приложений.
Поле или тип | Описание |
---|---|
Name | Задает уникальное имя для шаблона расположения параметров. Этот тип используется для отображения при ссылке на шаблон в журналах WMI, PowerShell, Просмотр событий и отладки. Дополнительные сведения см. в разделе Имя. |
ID | Заполняет уникальный идентификатор для определенного шаблона. Этот тег становится основным идентификатором, который служба UE-V использует для ссылки на шаблон во время выполнения. Дополнительные сведения см. в разделе Идентификатор. |
Описание | Необязательное описание шаблона. |
LocalizedNames | Необязательное имя, отображаемое в пользовательском интерфейсе, локализованное языковым стандартом языка. |
Локализованные описания | Необязательное описание шаблона, локализованное языковым стандартом. |
Приложение: SettingsLocationTemplate.xsd
Ниже приведен файл SettingsLocationTemplate.xsd с элементами, дочерними элементами, атрибутами и параметрами:
<?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="[^\\\?\*\|<>/:]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="IDString">
<xs:restriction base="xs:string">
<xs:pattern value="[^\\\?\*\|<>/:.]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="CompositeIDString">
<xs:restriction base="xs:string">
<xs:pattern value="[^\\\?\*\|<>/:.]+([.][^\\\?\*\|<>/:.]+)?" />
</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>
Связанные темы
Технический справочникпо работе с пользовательскими шаблонами UE-V и генератором шаблонов UE-V