イメージ構成ファイル (OEMInput)
イメージ構成ファイル (または OEMInput) は、ハードウェアとドライブの構成、ファクトリ OS 製品、言語、および製品固有の機能、アプリ、ドライバー、パッケージなど、イメージの設計に含まれるパッケージとカスタマイズを定義する XML ファイルです。
イメージを生成する場合、イメージ生成プロセスは、OEMInput.xml で構成した値と属性にマップするパッケージを使用してイメージを作成します。 言語や製品など、一部の OEMInput 要素を構成すると、追加の構成を行わなくても Windows システム キット (WSK) のパッケージが直接イメージに追加されます。 追加されるパッケージの場所を定義し、追加の機能、アプリ、ドライバー、および設定を有効にする機能マニフェストを構成および追加することもできます。
OEM 入力場所
ワークスペースを準備すると、ワークスペース ディレクトリのルートに開始イメージ構成ファイルが作成されます。このファイルには、選択した製品のデバイス情報、機能マニフェスト、機能、およびアプリが事前に構成されています。 ワークスペース ディレクトリで次の名前付けスキームのファイルを探します: <Product>_<architecture>_<boottype>_<hardware or VM>_<imagetype>.xml
OEMInput.xml ファイルのパスとファイル名を表示するには、WSK 環境から echo %WSKOEMInputFileName%
を実行します。
スキーマの説明
以下は空の OEMInput.xml ファイルです。 このセクションでは、各要素の目的と使用方法について説明します。
<OEMInput>
<Description></Description>
<DeviceLayoutType></DeviceLayoutType>
<Device></Device>
<ReleaseType></ReleaseType>
<BuildType></BuildType>
<Languages>
<Language></Language>
</Languages>
<AdditionalFMs>
<AdditionalFM></AdditionalFM>
</AdditionalFMs>
<Features>
<Microsoft>
<Feature></Feature>
</Microsoft>
<OEM>
<Feature></Feature>
</OEM>
</Features>
<AppXOptionalPackages>
<AppXID></AppXID>
</AppXOptionalPackages>
<DevicePlatformIDs>
<DevicePlatformID></DevicePlatformID>
</DevicePlatformIDs>
<Product></Product>
<TestContent></TestContent>
<UserInstallableFeatures>
<Feature></Feature>
</UserInstallableFeatures>
</OEMInput>
説明
イメージの説明とイメージのアーキテクチャ。 アーキテクチャ (AMD64、x86) はこのフィールドに含まれている必要があります。 アーキテクチャがこのフィールドにない場合、ビルドが失敗する可能性があります。
例:
<Description>Factory OS Hardware Validation image. UEFI Hardware OEMInput for AMD64</Description>
DeviceLayoutType
イメージのディスク レイアウト プロパティを定義します。
[オプション] | 説明 |
---|---|
GPT | UEFI ベースのデバイスと Hyper-V 第 2 世代仮想マシンに使用します。 |
GPT_SPACES_512 | スペースのレイアウトを備えた UEFI ベースのデバイスと Hyper-V 第 2 世代仮想マシンに使用します。 PrepWSKWorkspace を使用して新しいサンプル ファイルを作成する場合、これが既定値です。 |
GPT_SPACES_4096 | 4096 セクターのディスクを使用するスペースのレイアウトを備えた UEFI ベースのデバイスと Hyper-V 第 2 世代仮想マシンに使用します。 |
GPT_SPACES_SPLIT | デバイス レイアウトの分割を使用している場合に使用します。 |
例:
<DeviceLayoutType>GPT_SPACES_512</DeviceLayoutType>
Device
イメージが UEFI ベースのデバイスかどうかを定義します。
[オプション] | 説明 |
---|---|
GenericUEFIDevice | UEFI ベースのデバイスと Hyper-V 第 2 世代仮想マシンに使用します。 PrepWSKWorkspace を使用して新しいサンプル ファイルを作成する場合、これが既定値です。 |
例:
<Device>GenericUEFIDevice</Device>
ReleaseType
テスト アプリ、ドライバー、およびその他のパッケージを使用できるかどうかを判断します。
[オプション] | 説明 |
---|---|
テスト | これを使用して、イメージをテスト イメージとして識別します。このイメージの種類に対するイメージング制限は少なくなります。 |
<ReleaseType>Test</ReleaseType>
BuildType
実稼働ビルドを使用する場合に指定します。
[オプション] | 説明 |
---|---|
fre | これが既定です。 この値は変更しないでください。 |
例:
<BuildType>fre</BuildType>
言語
イメージで使用できる言語を指定します。
- 言語は
<Language>
要素で指定されます。 - 既定の言語は、言語の
Default
属性を使用して指定されます。 既定では、1 つの言語を指定する必要があります。 既定の言語を 1 つだけ指定します。
言語を追加する方法については、「言語の追加」を参照してください。
例 (en-us を既定値として設定):
<Languages>
<Language Default="true">en-us</Language>
<Language>zh-cn</Language>
</Languages>
AdditionalFMs
デバイス設計で使用される機能マニフェストを一覧表示します。 機能マニフェストには、イメージに追加できるアプリ、ドライバー、およびその他のコンポーネントが一覧表示されます。 これらの一部は、新しいワークスペースとサンプル ファイルのセットを作成する場合に事前定義されています。例を次に示します。
事前定義された機能マニフェストの例:
<AdditionalFMs>
<!-- You MUST include GenericDeviceFM.xml and FOSNonProductionFM.xml! -->
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\WindowsCoreProductionFM.xml</AdditionalFM>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\FOSNonProductionFM.xml</AdditionalFM>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\WindowsCoreNonProductionFM.xml</AdditionalFM>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\GenericDeviceFM.xml</AdditionalFM>
<!-- Add OEM FMs here. -->
<AdditionalFM>%WSKWorkspaceRoot%\FMFiles\OEMAppsFM.xml</AdditionalFM>
<AdditionalFM>%WSKWorkspaceRoot%\FMFiles\OEMDriversFM.xml</AdditionalFM>
</AdditionalFMs>
機能
<Features>
要素を使用すると、イメージにオプションの機能を追加できます。
<Microsoft>
要素: ファクトリ OS 製品に固有のオプション機能を追加または変更します。- ファクトリ OS に固有の使用可能な機能については、「ファクトリ OS」を参照してください。
<OEM>
要素: オプションのドライバーを定義した場合は、定義したドライバーをこの要素に追加します。
例:
<Features>
<Microsoft>
<Feature>WCOS_EVENTLOG_SERVICE</Feature>
<Feature>WCOS_PNP_RUNTIMEDEVICEINSTALL</Feature>
<Feature>FONTSIZE_15</Feature>
<Feature>DEVICEPORTAL_OPTIONAL_MONITORCONFIG</Feature>
<Feature>SERVICING_STACK</Feature>
<Feature>ALLOW_CONNECTEDSTANDBY</Feature>
<Feature>MICROSOFT_EDGE</Feature>
<Feature>OEM_IMAGE</Feature>
<Feature>SHELL_BOOT</Feature>
<Feature>DEVSHELL_MFG</Feature>
<Feature>MANUFACTURING_TOOLS</Feature>
<Feature>STATESEPARATION_ON</Feature>
<Feature>TESTSIGNING_ON</Feature>
<Feature>ENABLE_WOW</Feature>
<Feature>WCOS_DEVICEPORTAL</Feature>
<Feature>WCOS_DEVICEPORTAL_WOW</Feature>
<Feature>WCOS_POWERSHELLCORE</Feature>
<Feature>FACTORY_ORCHESTRATOR_SERVICE</Feature>
<Feature>STORAGESPACES_LAYOUT</Feature>
<Feature>KDNETUSB_ON</Feature>
</Microsoft>
<OEM>
<Feature>OEMDriver</Feature>
</OEM>
</Features>
AppXOptionalPackages
イメージに含めるオプションのアプリのアプリ ID を追加します。
例:
<AppXOptionalPackages>
<AppXID>Microsoft.WindowsCalculator_8wekyb3d8bbwe</AppXID>
<AppXID>Microsoft.FactoryTestFrameworkUWP_8wekyb3d8bbwe</AppXID>
</AppXOptionalPackages>
DevicePlatformIDs
DevicePlatformID は、SMBIOS システム情報構造の値で構成される文字列で、各値はピリオドで区切られます。 OEMInput.xml ファイルには、複数の DevicePlaformID を含めることができます。
ワークスペースを作成すると、OEMInput ファイルに <DevicePlatformID>Manufacturer.Family.Product.Version</DevicePlatformID>
が含まれます。 <DevicePlatformID>
文字列を更新してハードウェアを反映します。 詳細については、DevicePlatformID を参照してください。
OEMInput.xml にファイルに <DevicePlatformIDs>
要素が含まれていない場合は、必ず追加してください。 この要素が OEMInput.xml ファイルにない場合、イメージをハードウェアにフラッシュすることはできません。
例:
<DevicePlatformIDs>
<DevicePlatformID>Manufacturer.FamilyName.ProductName.ProductVersion</DevicePlatformID>
<DevicePlatformID>Contoso.Laptops.ContosoBook.V1</DevicePlatformID>
<DevicePlatformID>Contoso.ContosoLaptop.*.1</DevicePlatformID>
</DevicePlatformIDs>
Product
[製品はイメージで使用されるコア機能マニフェストを定義します。
[オプション] | 説明 |
---|---|
ファクトリ OS | ファクトリ OS に使用 |
例:
<Product>Factory OS</Product>
TestContent
テスト資料のフォルダーをイメージに追加する場合に使用されます。 テスト コンテンツの追加については、テストコンテンツを参照してください。
例:
<TestContent>%WSKWorkspaceRoot%\TestContent</TestContent>
スペース対応のファクトリ OS AMD64 UEFI VM のサンプル イメージ構成ファイル
<?xml version="1.0" encoding="utf-8"?>
<OEMInput xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/embedded/2019/06/ImageUpdate">
<Description>FactoryOS Test en-us image. VM2 OEMInput for VMGen2 on amd64</Description>
<DeviceLayoutType>GPT_SPACES_512</DeviceLayoutType>
<Device>GenericUEFIDevice</Device>
<ReleaseType>Test</ReleaseType>
<BuildType>fre</BuildType>
<Languages>
<Language Default="true">en-us</Language>
</Languages>
<AdditionalFMs>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\WindowsCoreProductionFM.xml</AdditionalFM>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\WindowsCoreNonProductionFM.xml</AdditionalFM>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\MobileDeviceSpaceFM.xml</AdditionalFM>
<AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\FOSNonProductionFM.xml</AdditionalFM>
<!-- Add OEM FMs here. -->
<AdditionalFM>%WSKWorkspaceRoot%\FMFiles\OEMAppsFM.xml</AdditionalFM>
<AdditionalFM>%WSKWorkspaceRoot%\FMFiles\OEMDriversFM.xml</AdditionalFM>
</AdditionalFMs>
<Features>
<Microsoft>
<Feature>STATESEPARATION_ON</Feature>
<Feature>STORAGESPACES_LAYOUT</Feature>
<Feature>UEFI_VM</Feature>
<Feature>WCOS_EVENTLOG_SERVICE</Feature>
<Feature>FONTSIZE_15</Feature>
<Feature>DEVICEPORTAL_OPTIONAL_MONITORCONFIG</Feature>
<Feature>WCOS_STORAGE_CDDVD</Feature>
<Feature>WCOS_POWERSHELL</Feature>
<Feature>TESTSIGNING_ON</Feature>
<Feature>SHELL_BOOT</Feature>
<Feature>MANUFACTURING_TOOLS</Feature>
<Feature>ENABLE_WOW</Feature>
<Feature>WCOS_DEVICEPORTAL</Feature>
<Feature>WCOS_DEVICEPORTAL_WOW</Feature>
<Feature>FACTORY_ORCHESTRATOR_SERVICE</Feature>
<Feature>MANUFACTURING_POWER_SCHEME</Feature>
<Feature>MANUFACTURING_MODE_EMPTY_PROFILE</Feature>
<Feature>RESOLUTION_1080X1920</Feature>
<Feature>OEM_IMAGE</Feature>
<Feature>KDNETUSB_ON</Feature>
<Feature>WCOS_HYPERV_GUEST_UEFI</Feature>
</Microsoft>
</Features>
<AppXOptionalPackages>
<AppXID>Microsoft.FactoryTestFrameworkUWP_8wekyb3d8bbwe</AppXID>
</AppXOptionalPackages>
<DevicePlatformIDs>
<DevicePlatformID>*.*.*.**</DevicePlatformID>
</DevicePlatformIDs>
<Product>Factory OS</Product>
<TestContent>%WSKWorkspaceRoot%\TestContent</TestContent>
</OEMInput>