ADMXIngestion (Windows 設定設計工具參考)
從 Windows 10 1703 版開始,您可以匯入 (內嵌) 群組原則 系統管理範本 (ADMX 檔案) ,並在布建套件中設定 ADMX 支援原則的值。 若要查看可套用何種類型的 ADMX 備份原則,請參閱 Win32 和傳統型橋接器應用程式原則設定概觀。
在 ConfigADMXInstalledPolicy 底下的設定可讓您在匯入的 ADMX 檔案中設定原則值。
在 ConfigOperations 底下的設定指定要匯入的 ADMX 檔案。
重要
只能使用布建套件來設定裝置範圍原則 (class=“Machine” 或 class=“Both”) 。
適用對象
設定群組 | Windows 用戶端 | Surface Hub | HoloLens | IoT 企業版 |
---|---|---|---|---|
ConfigADMXInstalledPolicy | ✅ | ✅ | ||
ConfigOperations | ✅ | ✅ |
ConfigOperations
使用 ConfigOperations 從 ADMX 檔案匯入 ADMX 原則。
輸入應用程式名稱,然後按一下 \[新增\]。 這可以是您指派的任何名稱,所以請選擇描述性的項目以協助您識別其目的。 例如,如果您要針對 Chromium Edge 匯入 ADMX,請輸入應用程式名稱。 例子
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
重要
配置設定值以先在 ConfigOperations 中匯入 ADMX 檔案。
在 ConfigADMXInstalledPolicy 中,您提供原則設定和該原則從匯入之 ADMX 取得的值。 您將需要在 ConfigOperations 中匯入之 ADMX 的資訊來完成 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 中的分類和原則
下列範例顯示上述程式範例中所使用之 Chromium Edge 的 ADMX 檔案。 第一個範例會醒目提示類別名稱。
<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 Cmdlet 移除多行檔案的歸位字元與換行字元,以建立可以貼到 AdmxFileUid 的單行檔案。
$outputFile = "output.admx"
$inputFile = "input.admx"
(Get-Content $inputFile -Raw).Replace("`r`n","") | Set-Content $outputFile -Force
組態範例
範例:邊緣效率模式
<?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>