Usare WSK per creare un'immagine di macchina virtuale di base
In questa procedura dettagliata verrà illustrato come usare i diversi componenti di Windows System Kit per creare un'immagine del sistema operativo Factory di base in una macchina virtuale. Verrà illustrato come usare i manifesti delle funzionalità e i file di configurazione delle immagini per configurare l'immagine.
Per eseguire questo lab, è necessario:
-
PC tecnico con:
- Windows System Kit installato
- Gestione Hyper-V installata
- Un driver di esempio (facoltativo)
- Un'app UWP di esempio (facoltativa)
Montare l'ISO di Windows System Kit.
Aprire l'ambiente dell'edificio immagine eseguendo
SetImagGenEnv.cmd
come amministratore.SetImagGenEnv.cmd
è nella radice del WSK montato.Creare un'area di lavoro
Si inizierà creando un'area di lavoro. Le aree di lavoro sono una raccolta di file che è necessario creare un'immagine. Quando si crea un'area di lavoro, è necessario scegliere l'architettura, il prodotto, il layout, il tipo di avvio e il tipo di immagine. In base alle selezioni, Windows System Kit creerà un'area di lavoro con un file OEMInput che funge da punto di partenza per la configurazione dell'immagine. In questo lab verrà creata un'immagine del sistema operativo Factory che è possibile distribuire in una macchina virtuale:
PrepWSKWorkspace "C:\Workspace" -Product FactoryOS -VM
Nota
La variabile %WSKWorkspaceRoot% visualizzata in questo lab viene impostata automaticamente quando si esegue
prepwskworkspace
. Se si chiude e riapri l'ambiente Windows System Kit, è possibile impostare la radice dell'area di lavoro passando alla cartella dell'area di lavoro ed eseguendoSetWSKWorkspaceRoot.cmd
.Aggiungere un driver all'immagine (facoltativo)
Dopo aver creato l'area di lavoro, Windows System Kit ha creato un file denominato
OEMDriversFM.xml
. Questo file consente di definire i driver da includere nell'immagine. IlOEMDrivers.xml
file generato da Windows System Kit non contiene informazioni sui driver aggiuntivi. Se si dispone di un driver di esempio che si vuole aggiungere:Copiare i file con estensione inf del driver e tutti i relativi file di supporto associati (.cab, .sys e così via) in
C:\Workspace\DCHUDrivers
.Eseguire uno script per aggiornare automaticamente il OEMDriversFM.xml:
UpdateWSKDriversFM
Vedere Manifesto delle funzionalità driver per altre informazioni sull'aggiunta di driver, tra cui come contrassegnare i driver come facoltativi e come generare una nuova app FM.
Aggiungere un'app all'immagine
Dopo aver creato l'area di lavoro, Windows System Kit ha creato un file denominato
OEMAppsFM.xml
. Questo file definisce ciò che è necessario per aggiungere un'app specifica all'immagine . Il file di esempio è configurato per aggiungere l'app Calcolatrice come funzionalità facoltativa all'immagine. Il file di configurazione dell'immagine include già l'app Calcolatrice, nonché le relative dipendenze. Ecco come aggiungere un'app aggiuntiva:Copiare un bundle con estensione appx, il relativo file di licenza e le dipendenze nella
%WSKWorkspaceRoot%\Apps
cartella.Dall'ambiente di compilazione eseguire:
UpdateWSKAppsFM
Si avrà un file di OEMAppsFM.xml aggiornato che include le app presenti nella
Apps
cartella. Quando è stato eseguitoUpdateWSKAppsFM
, le applicazioni aggiunte non vengono contrassegnate come facoltative. Se si desidera che siano facoltativi, modificare il file XML e impostareOptional = True
per le app desiderate.Le app che non sono impostate come facoltative verranno incluse nell'immagine (purché il file FM sia incluso nel file di configurazione dell'immagine). Se si imposta un'app come facoltativo e si vuole aggiungerla al file di configurazione dell'immagine, è necessario aggiungerla alla
AppXOptionalPackages
sezione. Ecco come aggiungere l'app Calcolatrice (poiché è stata impostata come facoltativa quando si è creata l'area di lavoro).Esaminare la voce in
OEMAppsFM.xml
:<PackageFile Optional="true" ID="Microsoft.WindowsCalculator_8wekyb3d8bbwe" LicenseFile="Microsoft.WindowsCalculator_8wekyb3d8bbwe.xml" Name="Microsoft.WindowsCalculator_8wekyb3d8bbwe.appxbundle" Path="$(mspackageroot)\Appx\Calculator"/>
Si noti che
ID
(Microsoft.WindowsCalculator_8wekyb3d8bbwe
), verrà usato per aggiungere l'app.Copiare e
ID
incollarlo nel file di configurazione dell'immagine. simile al seguente:<AppXOptionalPackages> <!-- Add optional APPX packages here. --> <AppXID>Microsoft.WindowsCalculator_8wekyb3d8bbwe</AppXID> </AppXOptionalPackages>
Salvare il file di configurazione dell'immagine.
Per rendere disponibili altre app nell'immagine, vedere Manifesto delle funzionalità dell'app.
Includere i manifesti delle funzionalità nel file di configurazione dell'immagine
Dopo aver creato l'area di lavoro, Windows System Kit ha creato un file di configurazione dell'immagine che include
OEMAppsFM.xml
automaticamente eOEMDriversFM.xml
. Se si creano manifesti di funzionalità aggiuntivi, è necessario aggiungerli nell'elemento nel file di configurazione dell'immagineAdditionalFMs
. In questo modo le funzionalità definite nei manifesti delle funzionalità sono disponibili per aggiungere all'immagine. Tutte le funzionalità presenti nel file di configurazione dell'immagine sono definite nei manifesti delle funzionalità. L'aggiunta di un manifesto di funzionalità al file di configurazione dell'immagine rende disponibili tutte le funzionalità definite nel manifesto della funzionalità per aggiungere all'immagine.Aprire il file di configurazione delle immagini in un editor XML e verificare che
OEMAppsFM.xml
eOEMDriversFM.xml
siano elencati. Le app e i driver inclusi in queste macchine virtuali verranno inclusi automaticamente nell'immagine, a meno che non sia specificato comeoptional
. Per altre informazioni, vedere Contrassegnare una funzionalità come facoltativa nei manifesti delle funzionalità.Aprire il file di configurazione dell'immagine. Verranno visualizzate le macchine virtuali seguenti elencate nel file. Se i manifesti delle funzionalità per le app e i driver non sono elencati, aggiungerli in modo che sia simile al seguente:
<AdditionalFMs> <!-- You MUST include GenericDeviceFM.xml and FOSNonProductionFM.xml! --> <AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\GenericDeviceFM.xml</AdditionalFM> <AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\FOSNonProductionFM.xml</AdditionalFM> <AdditionalFM>%WSKContentRoot%\FMFiles\%WSKImageArchitecture%\FactoryOS\HardwareValidationFM.xml</AdditionalFM> <!-- Add OEM FMs here. --> <AdditionalFM>%WSKWorkspaceRoot%\FMFiles\OEMAppsFM.xml</AdditionalFM> <AdditionalFM>%WSKWorkspaceRoot%\FMFiles\OEMDriversFM.xml</AdditionalFM> </AdditionalFMs>
Creare un'immagine
Eseguire il comando seguente per compilare l'immagine. Quando si configura l'area di lavoro, l'immagine deve essere una macchina virtuale. Verrà creata una macchina virtuale in una cartella denominata Workspace.Output.
BuildWSKImage %WSKWorkspaceRoot%\FactoryOS_Development_AMD64_UEFI_SpacesGPT_VM.xml
Nota
Il file xml a cui si fa riferimento può essere diverso a seconda delle opzioni scelte quando si è creata l'area di lavoro. Se viene visualizzato un errore quando si esegue questo comando, assicurarsi che il nome del file sia corretto.
Importante
Se si tenta di generare un'immagine nella cartella di destinazione che include già un oggetto . Le immagini FFU o i dischi rigidi virtuali con lo stesso nome, la creazione di immagini avrà esito negativo con l'errore seguente:
imageapp : ERROR : ThreadId18164 OutputFile C:\FactoryOS.Output\FactoryOS_Development_AMD64_UEFI_SpacesGPT_Hardware.ffu already exists.
Prima di generare un'immagine, assicurarsi che la cartella di output non contenga già un'immagine generata dello stesso nome.
Creare una macchina virtuale che usa il disco rigido virtuale creato. Dopo l'avvio, è possibile connettersi al dispositivo usando Il portale del dispositivo, SSH o TShell.