在脱机 Windows 映像中添加和删除驱动程序包

提示

本主题介绍如何将驱动程序包添加到装载的映像中以进行部署。

可以使用 DISM 在脱机 Windows 或 Windows PE 映像中安装或删除驱动程序包。 可以使用命令提示符直接添加或删除驱动程序包,也可以将无人参与的答案文件应用于装载的 .wim、.ffu、.vhd 或 .vhdx 文件。

使用 DISM 将驱动程序包安装到脱机映像时,会将驱动程序包添加到驱动程序存储区。 映像启动时,即插即用 (PnP) 将运行,并将存储中的驱动程序包关联到计算机上的相应设备。

注意

若要将驱动程序包添加到脱机映像,必须使用运行 Windows 10 或更高版本、Windows Server 2016 或更高版本或适用于 Windows 10 或更高版本的 Windows PE 的技术人员计算机。 从运行任何其他操作系统的技术人员计算机将驱动程序添加到脱机映像时,驱动程序签名验证可能会失败。

将驱动程序包添加到脱机 Windows 映像

可以将驱动程序包添加到脱机映像。

提示

如果要将驱动程序包添加到 Windows PE 映像,则可以将它们添加到 ran copype 时指定的输出文件夹中的 Windows PE 映像中,例如:C:\WinPE_amd64\media\sources\boot.wim。 这可确保每次从该文件夹生成 Windows PE 介质时,驱动程序包都将包含在 Windows PE 中。

  1. 装载 Windows 映像。 例如:

    Dism /Mount-Image /ImageFile:C:\test\images\install.wim /MountDir:C:\test\offline
    

    有关详细信息,请参阅使用 DISM 装载和修改 Windows 映像

  2. 将驱动程序包添加到映像。

    使用 DISM 和 /Add-Driver 选项将驱动程序包添加到装载的映像:

    若要安装单个驱动程序包 - 指定驱动程序文件:

    Dism /Image:C:\test\offline /Add-Driver /Driver:C:\drivers\mydriver.inf
    

    若要从文件夹安装所有驱动程序包 - 指向包含驱动程序包的文件夹。 若要包含文件夹的所有子文件夹,请使用 `/Recurse 选项:

    Dism /Image:C:\test\offline /Add-Driver /Driver:c:\drivers /Recurse
    

    注意

    尽管 /Recurse 很方便,但很容易使映像膨胀。 一些驱动程序包包含多个 .inf 驱动程序包,通常它们从同一文件夹共享负载文件。 在安装期间,每个 .inf 驱动程序包将展开到一个单独的文件夹。 每个文件夹中都有有效负载文件的副本。

    若要查看所有 DISM 驱动程序维护命令行选项,请参阅 DISM 驱动程序维护命令行选项

    若要安装未签名的驱动程序 - 使用 /ForceUnsigned 覆盖基于 X64 的计算机上安装的驱动程序包必须具有数字签名的要求。

    Dism /Image:C:\test\offline /Add-Driver /Driver:C:\drivers\mydriver.inf /ForceUnsigned
    
  3. 检查是否已添加驱动程序包。 添加到 Windows 映像的驱动程序包将命名为 Oem*.inf。 这保证了新添加的驱动程序包的唯一命名。 例如,文件 MyDriver1.inf 和 MyDriver2.inf 会被重命名为 Oem0.inf 和 Oem1.inf。

    Dism /Image:C:\test\offline /Get-Drivers
    
  4. 提交更改并卸载映像。

    Dism /Unmount-Image /MountDir:C:\test\offline /Commit
    

从脱机 Windows 映像中删除驱动程序包

  1. 在技术人员电脑上的提升命令提示符处,装载脱机 Windows 映像:

    Dism /Mount-Image /ImageFile:C:\test\images\install.wim /Name:"Windows Home" /MountDir:C:\test\offline
    
  2. 从映像中删除特定的驱动程序包。 还可以在一个命令行上删除多个驱动程序包。

    Dism /Image:C:\test\offline /Remove-Driver /Driver:OEM1.inf /Driver:OEM2.inf
    

    警告

    删除系统需要启动的驱动程序包可能会使 Windows 映像无法启动。 有关详细信息,请参阅 DISM 驱动程序维护命令行选项

  3. 提交更改并卸载映像。

    Dism /Unmount-Image /MountDir:C:\test\offline /Commit
    

使用无人参与的答案文件将驱动程序包添加到脱机 Windows 映像

  1. 收集要在 Windows 映像上安装的驱动程序包。

    注意

    答案文件中引用的目录和子目录中的所有驱动程序包都将添加到映像中。 应仔细管理答案文件以及这些目录,以解决使用不必要的驱动程序包增加映像大小的担忧。

  2. 使用 Windows 系统映像管理器 (Windows SIM) 创建包含要安装的驱动程序包的路径的答案文件

    1. 在 offlineServicing 配置阶段将 Microsoft-Windows-PnpCustomizationsNonWinPE\DriverPaths\PathAndCredentials\Credentials 组件添加到应答文件。

    注意

    如果需要 Windows PE 的驱动程序包来查看本地硬盘驱动器或网络,则必须使用答案文件的 windowsPE 配置阶段将驱动程序包添加到 Windows PE 驱动程序存储区。 有关详细信息,请参阅在 Windows 安装过程中向 Windows 添加设备驱动程序包

    1. 对于要访问的每个位置,通过右键单击“应答文件”窗格中的 DriverPaths 并单击“插入新 PathAndCredentials”来添加单独的 PathAndCredentials 列表项。

    有关如何修改应答文件的信息,请参阅在应答文件中配置组件和设置

  3. 对于 Microsoft-Windows-PnpCustomizationsNonWinPE 中的每个路径,如果文件位于网络共享上,请指定驱动程序包的路径和用于访问该文件的凭据。

    注意

    通过添加多个 PathAndCredentials 列表项来包含多个 DriverPaths 时,必须递增每个路径的 Key 值。 例如,可以添加两个单独的驱动程序路径,其中第一个路径的 Key 值等于 1,而第二个路径的 Key 值等于 2

  4. 保存答案文件并退出 Windows SIM。 应答文件必须与以下示例类似。

    <?xml version="1.0" ?><unattend xmlns="urn:schemas-microsoft-com:asm.v3" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State">
      <settings pass="offlineServicing">
        <component name="Microsoft-Windows-PnpCustomizationsNonWinPE" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS">
          <DriverPaths>
          <PathAndCredentials wcm:keyValue="1">
          <Path>\\networkshare\share\drivers</Path>
          <Credentials>
             <Domain>Fabrikam</Domain>
             <Username>MyUserName</Username>
             <Password>MyPassword</Password>
          </Credentials>
          </PathAndCredentials>
          </DriverPaths>
        </component>
      </settings>
    </unattend>
    
  5. 使用 DISM 装载要安装驱动程序包的 Windows 映像:

    Dism /Mount-Image /ImageFile:C:\test\images\install.wim /Index:1 /MountDir:C:\test\offline
    

    注意

    如果使用 VHD 或 FFU,请指定 /Index:1

  6. 将应答文件应用于已装载的 Windows 映像:

    DISM /Image:C:\test\offline /Apply-Unattend:C:\test\answerfiles\myunattend.xml
    

    有关如何应用应答文件的详细信息,请参阅 DISM 无人参与维护命令行选项

    答案文件中路径中引用的驱动程序包将添加到 Windows 映像。

  7. 检查是否已添加驱动程序包。 添加到 Windows 映像的驱动程序包将命名为 Oem<#>.inf。 这保证了新添加的驱动程序包的唯一命名。 例如,文件 MyDriver1.inf 和 MyDriver2.inf 会被重命名为 Oem0.inf 和 Oem1.inf。

    例如,键入:

    Dism /Image:C:\test\offline /Get-Drivers
    
  8. 卸载 .wim 文件并提交更改。 例如,键入:

    Dism /Unmount-Image /MountDir:C:\test\offline /Commit
    

设备驱动程序和部署概述

在 Windows 安装期间将设备驱动程序添加到 Windows

DISM - Windows 的部署映像服务和管理技术参考