이미지 구성 파일(또는 OEMInput)

이미지 구성 파일(또는 OEMInput)은 하드웨어 및 드라이브 구성, 팩터리 OS 제품, 언어, 제품별 기능, 앱, 드라이버 및 패키지를 포함하여 이미지 디자인으로 이동하는 패키지 및 사용자 지정을 정의하는 XML 파일입니다.

이미지를 생성할 때 이미지 생성 프로세스는 OEMInput.xml에서 구성한 값 및 특성에 매핑되는 패키지를 사용하여 이미지를 빌드합니다. 언어 및 제품과 같은 일부 OEMInput 요소를 구성하면 추가 구성 없이 WSK(Windows System Kit)의 패키지가 이미지에 직접 추가됩니다. 추가 패키지 위치를 정의하고 추가 기능, , 드라이버설정을 사용하도록 설정하는 기능 매니페스트를 구성하고 추가할 수도 있습니다.

Shows that feature manifest can be added to an image configuration file to add functionality. Once an image configuration file is customized, an image is built using collateral from the WSK and the OEM workspace.

OEMInput 위치

작업 영역을 준비하면 선택한 제품에 대한 디바이스 정보, 기능 매니페스트, 기능으로 미리 구성된 작업 영역 디렉터리의 루트에 시작 이미지 구성 파일이 제공됩니다. 작업 영역 디렉터리에서 <Product>_<architecture>_<boottype>_<hardware or VM>_<imagetype>.xml 명명 체계가 있는 파일을 찾습니다.

WSK 환경에서 echo %WSKOEMInputFileName%를 실행하여 OEMInput.xml 파일의 경로와 파일 이름을 가져올 수 있습니다.

스키마 설명

다음은 빈 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 UEFI 기반 디바이스 및 4096 섹터 디스크를 사용하는 공간 레이아웃이 있는 Hyper-V 2세대 가상 머신에 사용합니다.
GPT_SPACES_SPLIT 분할 디바이스 레이아웃을 사용할 때 사용합니다.

예제:

<DeviceLayoutType>GPT_SPACES_512</DeviceLayoutType>

디바이스

이미지가 UEFI 기반 디바이스용인지를 정의합니다.

옵션 설명
GenericUEFIDevice UEFI 기반 디바이스 및 Hyper-V 2세대 가상 머신에 사용합니다. PrepWSKWorkspace를 사용하여 새 샘플 파일을 만들 때 이 값이 기본값입니다.

예제:

<Device>GenericUEFIDevice</Device>

ReleaseType

테스트 앱, 드라이버 및 기타 패키지를 사용할 수 있는지 여부를 결정합니다.

옵션 설명
테스트 이를 통해 이미지를 테스트 이미지로 식별하면 이 이미지 유형에 대한 이미징 제한이 줄어듭니다.
<ReleaseType>Test</ReleaseType>

BuildType

프로덕션 빌드를 사용하도록 지정합니다.

옵션 설명
fre 기본값입니다. 이 값은 변경하지 마세요.

예제:

<BuildType>fre</BuildType>

언어

이미지에서 사용할 수 있는 언어를 지정합니다.

  • 언어는 <Language> 요소에 지정됩니다.
  • 기본 언어는 언어에 대한 Default 특성을 사용하여 지정됩니다. 하나의 언어를 기본값으로 지정해야 합니다. 하나의 기본 언어만 지정합니다.

언어를 추가하는 방법에 대한 정보는 언어 추가를 참조하세요.

예제(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> 요소를 사용하면 이미지에 선택적 기능을 추가할 수 있습니다.

예제:

<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

DevicePlatofrmID는 SMBIOS 시스템 정보 구조의 값으로 구성된 문자열로, 마침표로 구분된 각 값으로 연결됩니다. OEMInput.xml 파일에는 여러 DevicePlaformIDs가 포함될 수 있습니다.

작업 영역을 만들면 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>

제품

[제품은 이미지에 사용되는 핵심 기능 매니페스트를 정의합니다.

옵션 설명
팩터리 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>