ADMXIngestion (справка по конструктору конфигураций Windows)
Начиная с Windows 10 версии 1703, можно импортировать (принимать) групповая политика административные шаблоны (файлы ADMX) и настраивать значения для политик на основе ADMX в пакете подготовки. Сведения о применяемых типах политик с поддержкой ADMX см. в разделе Обзор конфигурации политики Win32 и приложения мост для классических приложений.
Параметры в разделе ConfigADMXInstalledPolicy позволяют устанавливать значения для политик в импортированном файле ADMX.
Параметры в разделе ConfigOperations указывают ADMX-файл для импорта.
Важно.
С помощью пакета подготовки можно задать только политики область устройства (class="Machine" или class="Both").
Область применения
Группы параметров | Клиент Windows | Surface Hub | HoloLens | IoT Enterprise |
---|---|---|---|---|
ConfigADMXInstalledPolicy | ✅ | ✅ | ||
ConfigOperations | ✅ | ✅ |
ConfigOperations
Используйте ConfigOperations для импорта политик ADMX из ADMX-файла.
Введите имя приложения, а затем нажмите кнопку Добавить. Назначено может быть любое имя, поэтому выбирайте что-то описательное, что поможет определить назначение. Например, если вы импортируете ADMX для Chromium Edge, введите имя приложения. Примере
MSEdgeEfficiencyMode
Выберите имя приложения в панели настроек, выберите тип параметра и нажмите кнопку Добавить. Выбранные варианты для политики и предпочтения не влияют на режим работы параметров и предоставлены только для вашего удобства, если потребуется назначить категорию добавленным параметрам.
Выберите тип параметра в панели настроек. В поле AdmxFileUid введите имя ADMX-файла или уникальный код для файла, а затем нажмите кнопку Добавить. В поле AdmxFileUid может быть любая строка, но она должна быть уникальной в пакете подготовки. Использование имени ADMX-файла поможет вам идентифицировать файл в будущем. Примере
MSEdgeEfficiencyMode
Примечание.
Сохранение одинаковых AdmxFileUid и AppName поможет предотвратить ошибки авторизации.
Выберите AdmxFileUid в панели настроек и вставьте содержимое файла ADMX-файла в текстовое поле. Прежде чем скопировать содержимое ADMX-файла, необходимо преобразовать его в одну строку. Инструкции см. в разделе преобразовать несколько строк в одну строку.
Примечание.
При наличии большого ADMX-файла можно включать только определенные параметры. Вместо вставки всего ADMX-файла, можно вставить только одну или несколько политик (после их преобразования в одну строку).
Пример: EfficiencyMode
<policy class="Both" displayName="$(string.EfficiencyMode)" explainText="$(string.EfficiencyMode_Explain)" key="Software\Policies\Microsoft\Edge" name="EfficiencyMode" presentation="$(presentation.EfficiencyMode)"> <parentCategory ref="Performance"/> <supportedOn ref="SUPPORTED_WIN7_V96"/> <elements> <enum id="EfficiencyMode" valueName="EfficiencyMode"> <item displayName="$(string.EfficiencyMode_AlwaysActive)"> <value> <decimal value="0"/> </value> </item> <item displayName="$(string.EfficiencyMode_NeverActive)"> <value> <decimal value="1"/> </value> </item> <item displayName="$(string.EfficiencyMode_ActiveWhenUnplugged)"> <value> <decimal value="2"/> </value> </item> <item displayName="$(string.EfficiencyMode_ActiveWhenUnpluggedBatteryLow)"> <value> <decimal value="3"/> </value> </item> </enum> </elements> </policy>
Повторите для каждого ADMX-файла или набора политик ADMX, которые вы хотите добавить, а затем настройте ConfigADMXInstalledPolicy для каждого из них.
ConfigADMXInstalledPolicy
Важно.
Настройте параметры, чтобы сначала импортировать файл ADMX в ConfigOperations.
В ConfigADMXInstalledPolicy предоставить параметр политики и значение для этой политики из импортированного файла ADMX. Вам потребуются сведения из ADMX-файла, который вы импортировали в ConfigOperations для заполнения ConfigADMXInstalledPolicy.
- Введите имя области, а затем нажмите кнопку Добавить. Структура имени области выглядит следующим образом:
<AppName (from ConfigOperations)>~<SettingType>~<category name from ADMX>
Дополнительные сведения см. в разделе Категория и политика в ADMX . Параметр может иметь несколько уровней имен категорий, как показано в следующем примере. Примере:MSEdgeEfficiencyMode~Policy~microsoft_edge~Performance
- Выберите имя области в панели настройки, введите имя политики из ADMX-файла и нажмите кнопку Добавить.
Пример:
EfficiencyMode
. - Выберите имя политики в панели настройки, затем введите значение из ADMX-файла в текстовое поле.
Пример:
<enabled/><data id="EfficiencyMode" Value="2">
.
Категория и политика в ADMX-файле
В следующих примерах показан ADMX-файл для Chromium Edge, используемый в примерах в процедурах выше. В первом примере выделены имена категорий.
<categories>
<category displayName="$(string.microsoft_edge)" name="microsoft_edge"/>
<category displayName="$(string.Performance_group)" name="Performance">
<parentCategory ref="microsoft_edge"/>
</category>
</categories>
В следующем примере выделена конкретная политика.
<policy class="Both" displayName="$(string.EfficiencyMode)" explainText="$(string.EfficiencyMode_Explain)" key="Software\Policies\Microsoft\Edge" name="EfficiencyMode" presentation="$(presentation.EfficiencyMode)">
<parentCategory ref="Performance"/>
<supportedOn ref="SUPPORTED_WIN7_V96"/>
<elements>
<enum id="EfficiencyMode" valueName="EfficiencyMode">
<item displayName="$(string.EfficiencyMode_AlwaysActive)">
<value>
<decimal value="0"/>
</value>
</item>
<item displayName="$(string.EfficiencyMode_NeverActive)">
<value>
<decimal value="1"/>
</value>
</item>
<item displayName="$(string.EfficiencyMode_ActiveWhenUnplugged)">
<value>
<decimal value="2"/>
</value>
</item>
<item displayName="$(string.EfficiencyMode_ActiveWhenUnpluggedBatteryLow)">
<value>
<decimal value="3"/>
</value>
</item>
</enum>
</elements>
</policy>
Преобразовать несколько строк в одну строку
Используйте следующий командлет PowerShell для удаления возвратов каретки и переводов строки из многострочного файла для создания однострочного файла, который можно вставить в AdmxFileUid.
$outputFile = "output.admx"
$inputFile = "input.admx"
(Get-Content $inputFile -Raw).Replace("`r`n","") | Set-Content $outputFile -Force
Примеры конфигурации
Пример: режим эффективности edge
<?xml version="1.0" encoding="utf-8"?>
<WindowsCustomizations>
<PackageConfig xmlns="urn:schemas-Microsoft-com:Windows-ICD-Package-Config.v1.0">
<ID>{d1ab1e3e-6e6d-4bd5-b35b-34cca18d2e16}</ID>
<Name>MSEdgeEfficiencyMode</Name>
<Version>1.1</Version>
<OwnerType>OEM</OwnerType>
<Rank>0</Rank>
<Notes></Notes>
</PackageConfig>
<Settings xmlns="urn:schemas-microsoft-com:windows-provisioning">
<Customizations>
<Common>
<ADMXIngestion>
<ConfigADMXInstalledPolicy>
<AreaName>
<PolicyName AreaName="MSEdgeEfficiencyMode~Policy~microsoft_edge~Performance" Name="MSEdgeEfficiencyMode~Policy~microsoft_edge~Performance">
<SetAdmxPolicy PolicyName="EfficiencyMode" Name="EfficiencyMode"><enabled/><data id="EfficiencyMode" value="2"/></SetAdmxPolicy>
</PolicyName>
</AreaName>
</ConfigADMXInstalledPolicy>
<ConfigOperations>
<ADMXInstall>
<AppName>
<SettingType AppName="MSEdgeEfficiencyMode" Name="MSEdgeEfficiencyMode">
<ADMXFileUniqueID SettingType="Policy" Name="Policy">
<InsertADMXFile AdmxFileUid="MSEdgeEfficiencyMode" Name="MSEdgeEfficiencyMode"><?xml version="1.0" ?><policyDefinitions revision="1.0" schemaVersion="1.0" xmlns="http://www.microsoft.com/GroupPolicy/PolicyDefinitions"> <!--microsoft_edge version: 96.0.1054.62--> <policyNamespaces> <target namespace="Microsoft.Policies.Edge" prefix="microsoft_edge"/> <using namespace="Microsoft.Policies.Windows" prefix="windows"/> </policyNamespaces> <resources minRequiredRevision="1.0"/> <supportedOn> <definitions> <definition displayName="$(string.SUPPORTED_WIN7_V96)" name="SUPPORTED_WIN7_V96"/> </definitions> </supportedOn> <categories> <category displayName="$(string.microsoft_edge)" name="microsoft_edge"/> <category displayName="$(string.Performance_group)" name="Performance"> <parentCategory ref="microsoft_edge"/> </category> </categories> <policies> <policy class="Both" displayName="$(string.EfficiencyMode)" explainText="$(string.EfficiencyMode_Explain)" key="Software\Policies\Microsoft\Edge" name="EfficiencyMode" presentation="$(presentation.EfficiencyMode)"> <parentCategory ref="Performance"/> <supportedOn ref="SUPPORTED_WIN7_V96"/> <elements> <enum id="EfficiencyMode" valueName="EfficiencyMode"> <item displayName="$(string.EfficiencyMode_AlwaysActive)"> <value> <decimal value="0"/> </value> </item> <item displayName="$(string.EfficiencyMode_NeverActive)"> <value> <decimal value="1"/> </value> </item> <item displayName="$(string.EfficiencyMode_ActiveWhenUnplugged)"> <value> <decimal value="2"/> </value> </item> <item displayName="$(string.EfficiencyMode_ActiveWhenUnpluggedBatteryLow)"> <value> <decimal value="3"/> </value> </item> </enum> </elements> </policy> </policies></policyDefinitions></InsertADMXFile>
</ADMXFileUniqueID>
</SettingType>
</AppName>
</ADMXInstall>
</ConfigOperations>
</ADMXIngestion>
</Common>
</Customizations>
</Settings>
</WindowsCustomizations>