Condividi tramite


File di configurazione dell'immagine (o OEMInput)

Il file di configurazione dell'immagine (o OEMInput) è un file XML che definisce i pacchetti e le personalizzazioni che rientrano nella progettazione di un'immagine, tra cui la configurazione dell'hardware e dell'unità, il prodotto del sistema operativo factory, le lingue e le funzionalità specifiche del prodotto, le app, i driver e i pacchetti inclusi.

Quando si genera un'immagine, il processo di generazione di immagini compila un'immagine usando pacchetti che eseguono il mapping ai valori e agli attributi configurati in OEMInput.xml. La configurazione di alcuni elementi OEMInput, ad esempio lingue e prodotti, aggiunge i pacchetti da Windows System Kit (WSK) direttamente nell'immagine senza configurazione aggiuntiva. È anche possibile configurare e aggiungere manifesti di funzionalità che definiscono percorsi di pacchetti aggiuntivi e abilitare funzionalità, app, driver e impostazioni aggiuntive.

Mostra che il manifesto della funzionalità può essere aggiunto a un file di configurazione dell'immagine per aggiungere funzionalità. Dopo aver personalizzato un file di configurazione dell'immagine, un'immagine viene compilata usando il materiale collaterale di WSK e l'area di lavoro OEM.

Posizione OEMInput

Quando si prepara un'area di lavoro, si otterrà un file di configurazione dell'immagine iniziale nella radice della directory dell'area di lavoro preconfigurata con informazioni sul dispositivo, manifesti delle funzionalità, funzionalità e app per il prodotto scelto. Cercare un file con lo schema di denominazione seguente nella directory dell'area di lavoro: <Product>_<architecture>_<boottype>_<hardware or VM>_<imagetype>.xml

È possibile ottenere il percorso e il nome file del file OEMInput.xml eseguendo echo %WSKOEMInputFileName% dall'ambiente WSK.

Descrizione dello schema

Di seguito è riportato un file di OEMInput.xml vuoto. Questa sezione descrive lo scopo e l'utilizzo di ogni elemento.

<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>

Descrizione

Descrizione dell'immagine e architettura dell'immagine. L'architettura (AMD64, x86) deve trovarsi in questo campo. Se l'architettura non è presente in questo campo, può causare l'esito negativo della compilazione.

Esempio:

<Description>Factory OS Hardware Validation image. UEFI Hardware OEMInput for AMD64</Description>

DeviceLayoutType

Definisce le proprietà del layout del disco per l'immagine.

Opzioni Descrizione
GPT Usare per dispositivi basati su UEFI e macchine virtuali hyper-V di seconda generazione.
GPT_SPACES_512 Usare per dispositivi basati su UEFI e macchine virtuali hyper-V di seconda generazione con il layout degli spazi. Quando si creano nuovi file di esempio con PrepWSKWorkspace, si tratta dell'impostazione predefinita.
GPT_SPACES_4096 Usare per i dispositivi basati su UEFI e le macchine virtuali hyper-V di seconda generazione con il layout degli spazi che usa dischi di settore 4096.
GPT_SPACES_SPLIT Usare quando si usa un layout di dispositivo diviso.

Esempio:

<DeviceLayoutType>GPT_SPACES_512</DeviceLayoutType>

Dispositivo

Definisce se l'immagine è per i dispositivi basati su UEFI.

Opzioni Descrizione
GenericUEFIDevice Usare per dispositivi basati su UEFI e macchine virtuali hyper-V di seconda generazione. Quando si creano nuovi file di esempio con PrepWSKWorkspace, si tratta dell'impostazione predefinita.

Esempio:

<Device>GenericUEFIDevice</Device>

ReleaseType

Determina se è possibile usare app, driver e altri pacchetti di test.

Opzioni Descrizione
Test Usare questa opzione per identificare un'immagine come immagine di test, per questo tipo di immagine saranno previste meno restrizioni per l'immagine.
<ReleaseType>Test</ReleaseType>

BuildType

Specifica di usare una compilazione di produzione.

Opzioni Descrizione
Fre Questo è il valore predefinito. Non modificare questo valore.

Esempio:

<BuildType>fre</BuildType>

Linguaggi

Specifica le lingue disponibili in un'immagine.

  • Le lingue vengono specificate negli <Language> elementi .
  • La lingua predefinita viene specificata usando l'attributo Default per una lingua. È necessario specificare una lingua come predefinita. Specificare solo una lingua predefinita.

Per informazioni su come aggiungere lingue, vedere Aggiungere lingue .

Esempio (en-us impostato come predefinito):

<Languages>
    <Language Default="true">en-us</Language>
    <Language>zh-cn</Language>
</Languages>

Moduli aggiuntivi

Elenca i manifesti delle funzionalità usati nella progettazione del dispositivo. I manifesti delle funzionalità elencano le app, i driver e altri componenti che è possibile aggiungere all'immagine. Alcuni di questi sono predefiniti quando si crea una nuova area di lavoro e un set di file di esempio, ad esempio:

Esempio di manifesti di funzionalità predefiniti:

<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>

Funzionalità

L'elemento <Features> consente di aggiungere funzionalità facoltative all'immagine.

Esempio:

<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

Aggiungere l'ID app delle app facoltative da includere nell'immagine.

Esempio:

<AppXOptionalPackages>
    <AppXID>Microsoft.WindowsCalculator_8wekyb3d8bbwe</AppXID>
    <AppXID>Microsoft.FactoryTestFrameworkUWP_8wekyb3d8bbwe</AppXID>
</AppXOptionalPackages>

DevicePlatformIDs

DevicePlatofrmID è una stringa costituita da valori della struttura delle informazioni di sistema SMBIOS, concatenate insieme a ogni valore separato da un punto. Il file OEMInput.xml può includere più DevicePlaformIDs.

Quando si crea un'area di lavoro, il file OEMInput includerà <DevicePlatformID>Manufacturer.Family.Product.Version</DevicePlatformID>. Aggiornare la <DevicePlatformID> stringa per riflettere l'hardware. Per altre informazioni, vedere DevicePlatformID .

Se il file OEMInput.xml non include l'elemento <DevicePlatformIDs> , assicurarsi di aggiungerlo. Non sarà possibile eseguire il flashing dell'immagine nell'hardware se questo elemento non si trova nel file OEMInput.xml.

Esempio:

<DevicePlatformIDs>
    <DevicePlatformID>Manufacturer.FamilyName.ProductName.ProductVersion</DevicePlatformID>
    <DevicePlatformID>Contoso.Laptops.ContosoBook.V1</DevicePlatformID>
    <DevicePlatformID>Contoso.ContosoLaptop.*.1</DevicePlatformID>
</DevicePlatformIDs>

Prodotto

[Product definisce il manifesto della funzionalità principale usato in un'immagine.

Opzioni Descrizione
Sistema operativo factory Usare per il sistema operativo factory

Esempio:

<Product>Factory OS</Product>

TestContent

Usato per aggiungere una cartella di test-collateral alle immagini. Per informazioni sull'aggiunta di contenuto di test, vedere Testare il contenuto .

Esempio:

<TestContent>%WSKWorkspaceRoot%\TestContent</TestContent>

File di configurazione dell'immagine di esempio per una macchina virtuale UEFI del sistema operativo Factory abilitata per spazi AMD64

<?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>