Partager via


Utiliser WSK pour créer une image de machine virtuelle de base

Dans cette procédure pas à pas, nous allons vous montrer comment utiliser les différents composants du Kit système Windows pour créer une image de base de la fabrique de système d’exploitation sur une machine virtuelle. Nous allons vous montrer comment utiliser des manifestes de fonctionnalités et des fichiers de configuration d’image pour configurer votre image.

Pour exécuter ce labo, vous aurez besoin des éléments suivants :

  • PC de technicien avec :
    • Le Kit système Windows installé
    • Gestionnaire Hyper-V installé
  • Exemple de pilote (facultatif)
  • Exemple d’application UWP (facultatif)
  1. Montez votre ISO du Kit système Windows.

  2. Ouvrez l’environnement de génération d’images en exécutant en SetImagGenEnv.cmd tant qu’administrateur. SetImagGenEnv.cmd se trouve à la racine du WSK monté.

  3. Créer un espace de travail

    Nous allons commencer par créer un espace de travail. Les espaces de travail sont une collection de fichiers dont vous avez besoin pour créer une image. Lorsque vous créez un espace de travail, vous devez choisir l’architecture, le produit, la disposition, le type de démarrage et le type d’image. En fonction de vos sélections, le Kit système Windows crée un espace de travail avec un fichier OEMInput qui sert de point de départ pour la configuration de l’image. Dans ce labo, nous allons créer une image de système d’exploitation d’usine que nous pouvons déployer sur une machine virtuelle :

    PrepWSKWorkspace "C:\Workspace" -Product FactoryOS -VM
    

    Notes

    La variable %WSKWorkspaceRoot% que vous verrez tout au long de ce labo est automatiquement définie lorsque vous exécutez prepwskworkspace. Si vous fermez et rouvrez l’environnement du Kit système Windows, vous pouvez définir la racine de l’espace de travail en accédant au dossier de votre espace de travail et en exécutant SetWSKWorkspaceRoot.cmd.

  4. Ajouter un pilote à votre image (facultatif)

    Lorsque vous avez créé votre espace de travail, le Kit système Windows a créé un fichier appelé OEMDriversFM.xml. Ce fichier vous permet de définir les pilotes que vous souhaitez inclure dans votre image. Le OEMDrivers.xml fichier généré par le Kit système Windows ne contient aucune information sur les pilotes supplémentaires. Si vous avez un exemple de pilote que vous souhaitez ajouter :

    1. Copiez le ou les fichiers .inf du pilote et tous les fichiers de prise en charge associés (.cab, .sys, etc.) dans C:\Workspace\DCHUDrivers.

    2. Exécutez un script pour mettre à jour automatiquement le OEMDriversFM.xml :

      UpdateWSKDriversFM
      

    Consultez Manifeste de fonctionnalité de pilote pour en savoir plus sur l’ajout de pilotes, notamment sur la façon de marquer les pilotes comme facultatifs et sur la génération d’un nouveau fm d’applications.

  5. Ajouter une application à votre image

    Lorsque vous avez créé votre espace de travail, le Kit système Windows a créé un fichier appelé OEMAppsFM.xml. Ce fichier définit ce qui est nécessaire pour ajouter une application particulière à votre image. L’exemple de fichier est configuré pour ajouter l’application Calculatrice en tant que fonctionnalité facultative à votre image. L’application Calculatrice est déjà incluse dans votre fichier de configuration d’image, ainsi que ses dépendances. Voici comment ajouter une application supplémentaire :

    1. Copiez un bundle .appx, son fichier de licence et toutes les dépendances dans le %WSKWorkspaceRoot%\Apps dossier.

    2. À partir de l’environnement de build, exécutez :

      UpdateWSKAppsFM
      
    3. Vous disposerez d’un fichier OEMAppsFM.xml mis à jour qui inclut les applications qui se trouvent dans le Apps dossier . Lorsque vous avez exécuté UpdateWSKAppsFM, les applications ajoutées ne sont pas marquées comme facultatives. Si vous souhaitez qu’elles soient facultatives, modifiez le fichier XML et définissez Optional = True pour les applications que vous souhaitez facultatives.

    4. Les applications qui ne sont pas définies comme facultatives sont incluses dans votre image (tant que le fichier FM est inclus dans votre fichier de configuration d’image). Si vous avez défini une application comme facultative et que vous souhaitez l’ajouter à votre fichier de configuration d’image, vous devez ajouter son ID à la AppXOptionalPackages section. Voici à quoi ressemble l’ajout de l’application Calculatrice (car elle a été définie comme facultative lorsque vous avez créé votre espace de travail).

      Examinez l’entrée dans OEMAppsFM.xml:

      <PackageFile Optional="true" ID="Microsoft.WindowsCalculator_8wekyb3d8bbwe" LicenseFile="Microsoft.WindowsCalculator_8wekyb3d8bbwe.xml" Name="Microsoft.WindowsCalculator_8wekyb3d8bbwe.appxbundle" Path="$(mspackageroot)\Appx\Calculator"/>
      

      Notez (IDMicrosoft.WindowsCalculator_8wekyb3d8bbwe), nous allons l’utiliser pour ajouter l’application.

      Copiez et ID collez-le dans le fichier de configuration de l’image. Voici le résultat :

      <AppXOptionalPackages>
      <!-- Add optional APPX packages here. -->
          <AppXID>Microsoft.WindowsCalculator_8wekyb3d8bbwe</AppXID>
      </AppXOptionalPackages>
      
    5. Enregistrez votre fichier de configuration d’image.

    Si vous souhaitez rendre d’autres applications disponibles dans votre image, consultez Manifeste des fonctionnalités de l’application.

  6. Inclure des manifestes de fonctionnalité dans votre fichier de configuration d’image

    Lorsque vous avez créé votre espace de travail, le Kit système Windows a créé un fichier de configuration d’image qui inclut OEMAppsFM.xml automatiquement et OEMDriversFM.xml. Si vous créez des manifestes de fonctionnalités supplémentaires, vous devez les ajouter sous l’élément AdditionalFMs dans le fichier de configuration de l’image. Cela rend les fonctionnalités définies dans les manifestes de fonctionnalité disponibles pour les ajouter à votre image. Toutes les fonctionnalités figurant dans votre fichier de configuration d’image sont définies dans les manifestes de fonctionnalités. L’ajout d’un manifeste de fonctionnalité à votre fichier de configuration d’image rend toutes les fonctionnalités définies dans ce manifeste de fonctionnalité disponibles pour l’ajouter à votre image.

    Ouvrez votre fichier de configuration d’image dans un éditeur XML et vérifiez que OEMAppsFM.xml et OEMDriversFM.xml sont répertoriés. Les applications et les pilotes inclus dans ces machines virtuelles sont automatiquement inclus dans votre image, sauf s’ils sont spécifiés en tant que optional. Pour en savoir plus sur le marquage d’une fonctionnalité comme facultative, consultez Manifestes de fonctionnalité.

    Ouvrez votre fichier de configuration d’image. Vous devriez voir les machines virtuelles suivantes répertoriées dans votre fichier. Si les manifestes de fonctionnalité pour vos applications et pilotes ne sont pas répertoriés, ajoutez-les de façon à ce qu’il ressemble à ceci :

    <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>
    
  7. Créer une image

    Exécutez la commande suivante pour générer votre image. Lorsque nous avons configuré notre espace de travail, nous définissons l’image sur une machine virtuelle. Cette opération génère une machine virtuelle dans un dossier appelé Workspace.Output.

    BuildWSKImage %WSKWorkspaceRoot%\FactoryOS_Development_AMD64_UEFI_SpacesGPT_VM.xml
    

    Notes

    Le fichier xml référencé ici peut être différent selon les options que vous avez choisies lors de la création de votre espace de travail. Si vous obtenez une erreur lorsque vous exécutez cette commande, vérifiez que le nom de fichier est correct.

    Important

    Si vous essayez de générer une image dans le dossier de destination qui inclut déjà un . Images FFU ou disques durs virtuels portant le même nom, la création de l’image échoue avec l’erreur suivante :

    imageapp : ERROR : ThreadId18164 OutputFile C:\FactoryOS.Output\FactoryOS_Development_AMD64_UEFI_SpacesGPT_Hardware.ffu already exists.
    

    Avant de générer une image, assurez-vous que votre dossier de sortie ne contient pas déjà une image générée du même nom.

  8. Créez une machine virtuelle qui utilise le disque dur virtuel que vous avez créé. Une fois que vous êtes démarré, vous pouvez vous connecter à l’appareil à l’aide de Device Portal, SSH ou TShell.