Схема пакета универсального изготовителя оборудования Windows

Вы можете вручную редактировать пакеты с помощью схемы универсальных пакетов OEM.

Создание универсальных пакетов OEM для Windows

схема

Здесь описаны только общие элементы и атрибуты.

Чтобы получить полную схему, выполните команду pkggen /universalbsp /wmxsd:., а затем откройте WM0.XSD в Visual Studio.

удостоверение

attribute Тип Обязательно Макрос Примечания
владелец строка *
name строка * *
namespace строка *
buildWow Логическое По умолчанию — false, для создания пакетов WOW задайте значение true.
legacyName строка * Использует указанное имя в качестве имени пакета, переопределяющего имя по умолчанию (owner-namespace-name.cab).
<identity name="FeatureName" namespace="FeatureArea" owner="OEM" buildWow="false"/>

onecorePackageInfo

attribute Тип Обязательно Макрос Примечания
targetPartition Обновление данных MainOS EFIESP PLAT * Если onecorePackageInfo не указан, default = MainOS
releaseType Рабочий тест Если параметр onecorePackageInfo не указан, default = Production
<onecorePackageInfo targetPartition="MainOS" releaseType="Production"/>

файл

attribute Тип Обязательно Макрос Примечания
source строка * *
destinationDir строка * DestinationDir должен начинаться с одного из следующих встроенных макросов среды выполнения ниже.
name строка используется для переименования исходного файла
BuildFilter строка

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

attribute Тип Обязательно Макрос Примечания
keyName строка * * keyName должно начинаться с $(hklm.system), $(hklm.software), $(hklm.hardware), $(hklm.sam), $(hklm.security), $(hklm.bcd), $(hklm.drivers), $(hklm.svchost), $(hklm.policies), $(hklm.microsoft), $(hklm.microsoft), $(hklm.windows), $(hklm.windowsnt), $(hklm.currentcontrolset), $(hklm.services), $(hklm.control), $(hklm.autologger), $(hklm.enum), $(hkcr.root), $(hkcr.classes), $(hkcu.root), $(hkuser.default)
BuildFilter строка

Чтобы просмотреть разделы реестра, соответствующие этим расположениям, см. раздел 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

attribute Тип Обязательно Макрос Примечания
name строка Имя указываемого значения. Если значение не указано, значение по умолчанию в ключе будет переписано
type строка * Тип должен иметь один из следующих значений: REG_SZ, REG_MULTI_SZ, REG_DWORD, REG_QWORD, REG_BINARY REG_EXPAND_SZ
value строка
BuildFilter строка
<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>