共用方式為


Windows 通用 OEM 套件結構描述

您可以使用通用 OEM 套件架構手動編輯套件。

建立 Windows 通用 OEM 套件

結構描述

這裡只會記載通用元素和屬性。

若要取得完整的架構執行 「pkggen /universalbsp /wmxsd:.」,請使用 Visual Studio 開啟 WM0.XSD

身分識別

屬性 類型 必要 巨集 備註
owner 字串 *
NAME 字串 * *
命名空間 字串 *
buildWow boolean 預設值 = false,設定為 true 以產生 WOW 套件
legacyName string * 使用指定的名稱作為覆寫預設名稱 (owner-namespace-name.cab) 的套件名稱。
<identity name="FeatureName" namespace="FeatureArea" owner="OEM" buildWow="false"/>

onecorePackageInfo

屬性 類型 必要 巨集 備註
targetPartition MainOS 資料更新OS EFIESP PLAT * 如果未指定 onecorePackageInfo,預設值 = MainOS
releaseType 生產測試 如果未指定 onecorePackageInfo,則 Default = Production
<onecorePackageInfo targetPartition="MainOS" releaseType="Production"/>

檔案

屬性 類型 必要 巨集 備註
source 字串 * *
destinationDir string * destinationDir 必須從下列其中一個內建執行時間宏開始。
NAME 字串 用來重新命名來源檔案
buildFilter string

destinationDir 的開頭必須是:

  • $ (runtime.bootDrive)
  • $ (runtime.systemDrive)
  • $ (runtime.systemRoot)
  • $ (runtime.windows)
  • $ (runtime.system32)
  • $ (runtime.system)
  • $ (runtime.drivers)
  • $ (runtime.help)
  • $ (runtime.inf)
  • $ (runtime.fonts)
  • $ (runtime.wbem)
  • $ (runtime.appPatch)
  • $ (runtime.sysWow64)
  • $ (runtime.mui)
  • $ (runtime.commonFiles)
  • $ (runtime.commonFilesX86)
  • $ (runtime.programFiles)
  • $ (runtime.programFilesX86)
  • $ (runtime.programData)
  • $ (runtime.userProfile)
  • $ (runtime.startMenu)
  • $ (runtime.documentSettings)
  • $ (runtime.sharedData)
  • $ (runtime.apps)
  • $ (runtime.clipAppLicenseInstall)
  • 如果未指定,預設值為 $ (runtime.system32)

若要查看對應至這些位置的目錄,請參閱 C:\Program Files (x86) \Windows Kits\10\tools\bin\i386\pkggen.cfg.xml。

<file buildFilter="(not build.isWow) and (build.arch = arm)" name="output.dll" source="$(_RELEASEDIR)\input.dll" destinationDir="$(runtime.system32)"/>

regKey

屬性 類型 必要 巨集 備註
keyName 字串 * * keyName 的開頭必須是 $ (hklm.system) 、 $ (hklm.software) 、 $ (hklm.hardware) 、 $ (hklm.sam) , $ (hklm.security) , $ (hklm.bcd) , $ (hklm.drivers) , $ (hklm.svchost) , $ (hklm.policies) , $ (hklm.microsoft) , $ (hklm.windows) 、$ (hklm.windowsnt) 、$ (hklm.currentcontrolset) 、$ (hklm.services) 、$ () hklm.control) 、$ (hklm.autologger) 、$ (hklm.enum) 、$ (hkcr.root) 、 $ (hkcr.classs) 、 $ (hkcu.root) 、 $ (hkuser.default)
buildFilter string

若要查看對應至這些位置的登錄機碼,請參閱 C:\Program Files (x86) \Windows Kits\10\tools\bin\i386\pkggen.cfg.xml。

<regKey buildFilter="buildFilter1" keyName="keyName1">
  <regValue buildFilter="buildFilter1" name="name1" value="value1" type="REG_SZ" />
</regKey>

regValue

屬性 類型 必要 巨集 注意
NAME 字串 您要指定之值的名稱。 如果未指定,金鑰中的預設值將會過度寫入
type 字串 * 類型必須是下列其中一項:REG_SZ、REG_MULTI_SZ、REG_DWORD、REG_QWORD、REG_BINARY、REG_EXPAND_SZ
value 字串
buildFilter string
<regKey buildFilter="buildFilter1" keyName="keyName1">
  <regValue buildFilter="buildFilter1" name="name1" value="value1" type="REG_SZ" />
  <regValue buildFilter="buildFilter2" name="name2" value="value1,value2" type="REG_MULTI_SZ" />
  <regValue buildFilter="buildFilter3" name="name3" value="00000000FFFFFFFF" type="REG_QWORD" />
  <regValue buildFilter="buildFilter4" name="name4" value="FFFFFFFF" type="REG_DWORD" />
  <regValue buildFilter="buildFilter5" name="name5" value="0AFB2" type="REG_BINARY" />
  <regValue buildFilter="buildFilter6" name="name6" value="&quot;%ProgramFiles%\MediaPlayer\wmplayer.exe&quot;" type="REG_EXPAND_SZ" />
</regKey>