可以添加驱动程序包和验证 OS 自定义包,以确保验证 OS 可以启动和支持方案的应用。 可以使用自定义包添加对文档中稍后介绍的多个按需功能的支持。
验证 OS 不随收件箱驱动程序一起提供,因此你必须确保先添加驱动程序,然后才能将映像应用到电脑。
整个过程
使用验证 OS 映像生成器创建验证 OS 映像的整个过程如下:
将验证 OS ISO 文件装载到技术人员电脑文件系统上的特定位置;
根据技术员电脑的本机体系结构(x64 或 arm64),启动适当的 ValidationOSImageBuilder.exe。
按照 Validation OS ImageBuilder 中的步骤进行操作
[可选] 选择生成的验证 OS 映像的位置;
[可选] 将驱动程序添加到装载的验证 OS 映像;
[可选] 添加一个或多个所需的按需功能;
[可选] 在验证 OS 映像中设置/替代注册表项;
[可选] 在验证 OS 映像中包含自定义二进制文件/应用程序;
[可选] 创建一个 Visual Studio 解决方案,其中包含与生成的验证 OS 映像匹配的 SDK 的引用。
验证操作系统映像构建器入门
验证 OS 映像生成器是一种 GUI 工具,可用于为特定方案轻松生成自定义验证 OS 映像。 它允许你添加
- 可选包,如音频、蓝牙、相机、多媒体、USB 等。
- 特定硬件的驱动程序
- 要包含在验证 OS 映像中的其他软件应用程序
- 在启动时要在验证操作系统映像中启用的注册表项
- 要在 OS 启动时运行的启动命令
它还允许生成可用于所生成的特定验证 OS 映像的 SDK。
可在此处找到可用的可选功能包列表:功能包
验证操作系统映像构建器的使用
下面是验证 OS ISO 包中验证 OS 映像生成器的基本流程的分步使用指南。
装载验证 OS ISO 包,并导航到
<ISO_ROOT>:\ImageBuilder装载 ISO 的驱动器所在的文件夹<ISO_ROOT>:。运行 ValidationOSImageBuilder.exe 以启动验证 OS 映像生成器,并接受系统要求你使用管理员权限运行程序的提示
单击“开始”转到“功能”屏幕
在“功能”屏幕中,选择要添加到验证 OS 映像的功能,然后单击“下一步”转到“驱动程序”屏幕(请参阅上一部分的可用功能列表)
在“可选驱动程序”屏幕中,选择设备驱动程序所在的文件夹
在此屏幕中,还可以选择将以下组件添加到映像
可选软件文件夹:这允许你包括包含可选.EXE文件的文件夹,该文件将包含在验证 OS 映像中
注册表文件:这允许您上传一个 .REG 文件,其中包含将在启动时包含到验证 OS 映像中的注册表项。
驱动程序开发人员:
可以将驱动程序证书作为.reg文件添加到验证操作系统中。 我们提供了一个脚本,用于为给定证书生成此.reg文件,然后你可以在验证 OS 映像生成器应用中上传该文件。请参阅: 将证书转换为验证 OS 的注册表文件。
启动命令:这允许将.EXE文件添加到将在启动时执行的验证 OS 映像
单击“下一步”转到“输出”屏幕
在“输出”屏幕中,可以
选择将生成输出 WIM 文件和其他组件的文件夹(默认值为
C:\ValidationOS)指定验证 OS 映像(WIM)是从 U 盘还是硬盘驱动器启动(默认值为 USB)
选择验证 OS 映像生成器是否应为生成的自定义验证 OS 映像生成一个关联的 SDK。
将最近使用的验证 OS 映像生成器设置保存到模板文件以供将来使用
单击“下一步”转到“审阅”和“完成”屏幕,其中将显示选择最后一次的所有功能、驱动程序和输出设置。
单击“创建”以生成验证 OS 映像。
生成验证 OS 映像后,会看到一个选项,用于导航到输出文件夹,你将在其中看到新生成的 ValidationOS.wim。
注释
ValidationOS-2.wim 也在 GenImageOutput 文件夹中生成。 这是一个优化映像,仅包含与在“驱动程序”屏幕中选择的启动类型相关的分区
使用验证操作系统映像构建器命令行
验证 OS 映像生成器 GUI 中提供的所有功能也通过验证 OS 映像生成器命令行提供。 若要使用验证 OS 映像生成器命令 ine,请导航到 <ISO_ROOT>:\IBCLI 装载 ISO 的驱动器所在的文件夹 <ISO_ROOT>: 。
验证 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 映像,映像生成器还会在 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