共用方式為


使用驗證OS映像產生器進行驗證OS自定義

您可以新增驅動程式套件和驗證 OS 自定義套件,以確保驗證 OS 可以開機並支援您案例的應用程式。 您可以使用自定義套件,新增檔中稍後涵蓋的數個隨選功能支援。

驗證 OS 不會隨附於收件匣驅動程式,因此您必須確定您新增驅動程式,才能將映像套用至您的電腦。

整體程序

使用驗證 OS 映像產生器建立驗證 OS 映像的整體程式如下:

  1. 將驗證 OS ISO 檔案掛接至技術人員計算機文件系統上的特定位置;

  2. 根據技術人員計算機的原生架構啟動適當的ValidationOSImageBuilder.exe (x64 或 arm64):

  3. 遵循驗證OS ImageBuilder中的步驟

    1. [選擇性] 選取產生的驗證OS映像位置;

    2. [選擇性] 將驅動程式新增至掛接的驗證OS映像;

    3. [選擇性] 新增一或多個所需的隨選功能;

    4. [選擇性] 在驗證OS映像中設定/覆寫登錄機碼;

    5. [選擇性] 在驗證OS映像中包含自定義二進位檔/應用程式;

    6. [選擇性] 建立 Visual Studio 解決方案,其中包含符合所產生驗證 OS 映射的 SDK 參考。

開始使用驗證OS映像產生器

驗證OS映像產生器是 GUI 工具,可讓您輕鬆地針對特定案例產生自定義的驗證 OS 映射。 它可讓您新增

  • 選擇性套件,例如音訊、藍牙、相機、多媒體、USB 等。
  • 特定硬體的驅動程式
  • 您要包含在驗證 OS 映像中的其他軟體應用程式
  • 啟動時您想要在驗證 OS 映射中啟用的登錄機碼
  • 您想要在 OS 啟動時執行的啟動命令

它也可讓您產生可用於所產生之特定驗證OS映像的SDK。

您可以在這裡找到可用的選擇性featuire套件清單: 功能套件

使用驗證OS映像產生器

以下是驗證 OS ISO 套件中驗證 OS 映射產生器基本流程的逐步使用指南。

  1. 掛接驗證 OS ISO 套件,並瀏覽至 <ISO_ROOT>:\ImageBuilder 資料夾,其中 <ISO_ROOT>: 是掛接 ISO 的磁碟驅動器。

  2. 執行ValidationOSImageBuilder.exe以啟動驗證OS映像產生器,並接受系統要求您以 管理員 istrator 許可權執行程式的提示

  3. 按兩下 [開始使用] 以移至 [功能] 畫面

  4. 在 [功能] 畫面中,選取您要新增至驗證 OS 映射的功能,然後按 [下一步] 移至 [驅動程式] 畫面(請參閱上一節中可用的功能清單)

  5. 在選用的 [驅動程式] 畫面中,選取您裝置驅動程式所在的資料夾

  6. 在此畫面中,您也可以選擇性地將下列元件新增至映像

    1. 選擇性軟體資料夾:這可讓您包含將包含在驗證OS映像中選擇性.EXE檔案的資料夾

    2. 登入檔:這可讓您上傳 。包含登錄專案的 REG 檔案,這些專案將在開機時包含在驗證 OS 映射中

    3. 啟動命令:這可讓您將.EXE檔案新增至將在開機時執行的驗證OS映像

  7. 按 [下一步] 以移至 [輸出] 畫面

  8. 在 [輸出] 畫面中,您可以

    1. 選擇將產生輸出 WIM 檔案和其他元件的資料夾 (預設值為 C:\ValidationOS

    2. 指定驗證 OS 映像 (WIM) 是否會從 USB 磁碟驅動器或硬碟開機(預設值為 USB)

    3. 選擇驗證OS映像產生器是否應該為產生的自訂驗證OS映像產生相關聯的SDK

    4. 將最近使用的驗證 OS 映射產生器設定儲存至範本檔案,以供日後使用

  9. 按 [下一步] 以移至 [檢閱和完成] 畫面,其中會顯示您選擇最後一次的所有功能、驅動程式和輸出設定。

  10. 按兩下 [建立] 以產生驗證OS映像。

  11. 產生驗證OS映像之後,您會看到一個選項,以巡覽至輸出資料夾,您會看到新產生的 ValidationOS.wim。

注意

ValidationOS-2.wim 也會在 GenImageOutput 資料夾中產生。 這是優化映像,只包含與您在 [驅動程式] 畫面中選取之開機類型相關的分割區

使用驗證OS映像產生器命令列

驗證OS映像產生器 GUI 中提供的所有功能,也可透過驗證OS映射產生器命令列取得。 若要使用 [驗證 OS 映射產生器] 命令 ine,請瀏覽至 <ISO_ROOT>:\IBCLI 資料夾,其中 <ISO_ROOT>: 是掛接 ISO 的磁碟驅動器。

認證 OS 映像產生器命令列公用程式稱為 ValidationOSImageBuilderCLI.exe

以下是可用的指令列選項清單:

-l, --list List all features included in the ISO

-i, --info <info> Get the description of a specific feature

-rp, --resolve <resolve> List all packages included by a set of features

-f, --features <features> Specify features to include

-d, --drivers <drivers> Specify the driver folder path

-s, --software <software> Specify the software folder path

-r, --registry <registry> Specify the registry file path

-sc, --startup-command <startup-command> Specify the startup command file path

-o, --output <output> Specify the output folder path

-sdk, --generate-sdk Generate SDK solution

-st, --save-template Save settings to a template

-g, --generate-image Trigger image generation

-api, --generate-api Generate API Surface from features

-lt, --load-template <load-template> Load a template file

-bt, --boottype <boottype> Specify the boot type (USB/InternalDisk).
        Default is USB

--version Show version information

-?, -h, --help Show help and usage information

當您執行時,會顯示如何使用命令行選項的範例 ValidationOSImageBuilderCLI -h

使用產生的 SDK

若要使用產生的 SDK,您必須在電腦上安裝 Microsoft Visual Studio。

在 [總管] 中,流覽至輸出資料夾(通常命名 C:\ValdationOS<Date-Time of image creation>為 ),您會在其中看到名為 sdk 的資料夾。 在此資料夾內,您會看到.sln檔案。 按兩下此檔案,以在Visual Studio中開啟它。

在 Visual Studio 的 方案總管 檢視中,您會看到.cpp檔案。 您可以使用程式代碼編輯此檔案,或將自己的程式碼檔案新增至此專案。 若要檢視項目參考的 Nuget 套件,您可以在 方案總管 檢視中以滑鼠右鍵按兩下 [參考],然後選取 [管理 Nuget 套件]

若要建置方案,請從主功能表中選取 [建 置],然後選取 [建置方案 ],這會從此程式代碼中產生 自定義驗證OS映像的.exe 檔案。

搭配使用 APIValidator 搭配apisurface.xml

除了 ValidationOS.wim 映射,Image Builder 也會在 api 資料夾中產生apisurface.xml檔案。 此檔案包含自定義 ValidationOS.wim 映像所支援之所有 API 函式的參考清單。

您可以使用稱為 APIValidator.exe 的工具搭配任何.exe檔案,而此apisurface.xml檔案做為輸入,以判斷.exe檔案與自定義 ValidationOS.wim 映射之間是否有不相容。

若要安裝APIValidator.exe,請參閱 檔案 <ISO_ROOT>:\SDK\ValidationOS_System_Kit-APIValidator_Usage.txt中的指示。 您必須先安裝 WDK。 安裝之後,針對 API 介面檔案分析檔案的一 .exe 般命令看起來會像這樣:

Apivalidator.exe -BinaryPath:"<Path to .exe file>" -SupportedApiXmlFiles:"<Path to apisurface.xml file>"

在輸出中,您會看到錯誤清單,如果有的話,以及不相容相依性的詳細數據。

驗證OS映像產生器 SDK 範例

您可以在這裏檢視使用驗證 OS 映像產生器所提供的各種功能的程式代碼範例: https://github.com/microsoft/validation-OS