创建答案文件的最佳实践

发布时间: 2009年10月

应用到: Windows 7, Windows Server 2008 R2

本节包括创作无人参与安装答案文件的建议。

始终在 Windows SIM 中验证答案文件

建议在 Windows(R) 系统映像管理器 (Windows SIM) 中创建答案文件。但是,如果使用手动创作的答案文件,则必须在 Windows SIM 中验证答案文件以确认答案文件是否工作。

因为可用设置和默认值有时会更改,所以在再次使用答案文件时必须重新进行验证。

Windows(R) XP、Windows Server® 2008 或 Windows Vista® 的旧答案文件不能在 Windows® 7 或 Windows Server® 2008 R2 中使用。不过,在更改 Windows® 无人参与安装参考 中的 Changes in Unattended Setup Settings from Windows Vista and Windows Server 2008中所述的设置之后,Windows Vista® 的旧答案文件便可以在 Windows 7 和 Windows Server® 2008 R2 中使用。

避免不必要的设置

向答案文件插入设置的父节点会引入不必要的设置。

Windows SIM 不会在答案文件中创建空的设置。尽管不必要的设置会被忽略,但对它们进行分析要占用时间。因此,在创作答案文件时,请删除所有不需要的设置。

通常,最好将组件向下展开,一直到最低级别,然后只选择那些要设置的元素。对于默认值,仅当它为所需的元素时才需要包括该元素。

了解配置阶段

配置阶段表示不同的安装阶段。了解每个配置阶段过程中出现的情况对于创建答案文件至关重要。请查看运行 Windows 安装程序的方法配置阶段的工作方式

避免创建空元素

Windows SIM 支持在答案文件中创建空元素。通过右键单击一个字符串设置类型并选择**“写入空字符串”**,可以在答案文件中创建一个空元素。不过,有些设置支持空元素,而有些则不支持。在某些情况下,创建空元素将会导致 Windows 安装失败。在创建空元素之前,请参考 Windows® 无人参与安装参考 中的组件设置文档。

在使用数据映像或 $OEM$ 文件夹时不要覆盖现有文件

添加数据(如其他驱动程序或应用程序)时,不要覆盖 Windows 系统文件。覆盖系统文件会损坏计算机。有关添加驱动程序和应用程序的信息,请参阅 Windows® OEM 预安装包 (Windows OPK) 用户指南 或 Windows® 自动安装工具包 (Windows AIK) 用户手册 中的创建数据映像添加应用程序、驱动程序、程序包、文件和文件夹

部署到多种体系结构类型

为将要部署到的每种体系结构类型创建单独的答案文件。如果一个答案文件包含将应用到不同体系结构类型的多个组件,则这些组件设置可能会应用多次,或可能不正确地应用。

使用多个答案文件

可以使用多个答案文件 (Unattend.xml) 创建不同的自定义集,以便这些自定义能够在不同的时间应用到各个映像。例如,可以在 Windows 安装过程中使用一个包含品牌和支持信息的通用答案文件。安装完成后,如果运行 Sysprep 工具,则可以应用另一个答案文件来添加其他自定义。

可以将答案文件与 Windows 安装程序、Sysprep 以及部署映像服务和管理 (DISM) 工具结合使用。例如,若要自定义 Windows 防火墙设置,可以创建一个答案文件与 Sysprep 结合使用。在审核模式下,运行以下命令:**sysprep /generalize /unattend:**answerfile。此命令将通过删除系统特定的信息对计算机进行一般化。由于已包含一个新的答案文件,此答案文件将缓存到 %WINDIR%\Panther,同时覆盖任何现有答案文件。在 generalize 配置阶段过程中,Windows 安装程序将在新答案文件中应用设置。下一次计算机启动并运行 specialize 配置阶段时,将应用新答案文件 specialize 部分中的设置。

有关将答案文件与 Windows 安装程序结合使用的详细信息,请参阅运行 Windows 安装程序的方法

有关将答案文件与 Sysprep 结合使用的详细信息,请参阅将答案文件与 Sysprep 配合使用

有关将答案文件与 DISM 结合使用的详细信息,请参阅无人参与服务命令行选项

向 Windows 映像添加更新

只使用 Microsoft 支持的处理机制更新 Windows 映像。

  • 使用 DISM 更新脱机 Windows 映像。有关详细信息,请参阅阶段 5:管理和处理 Windows 映像

  • 使用 OCSetup 工具 (Ocsetup.exe) 更新运行的 Windows 安装。

  • 在安装期间,您还可以将计算机配置为从 Windows Update 自动下载更新。

  • 其他 Microsoft 提供的处理技术可以包括系统管理软件 (SMS) 或 Windows 服务器更新服务 (SUS)。

绝不要使用 $OEM$ 文件夹或数据映像覆盖 Windows 系统文件。

如果有其他要添加到计算机的设备驱动器,请使用 DISM 脱机添加这些驱动程序。您还可以使用 Microsoft-Windows-PnPCustomizationsNonWinPE 和 Microsoft-Windows-PnPCustomizationWinPE 组件在无人参与安装中加入其他驱动程序。有关详细信息,请参阅脱机添加和删除驱动程序

指定语言设置

若要使用答案文件更改语言,请使用 Microsoft-Windows-International-Core-WinPE 组件。有两种可以在其中指定语言设置的组件:

  • Microsoft-Windows-International-Core-WinPE。在 windowsPE 配置阶段应用的语言设置。

  • Microsoft-Windows-International-Core。在 specializeoobeSystem 配置阶段应用的语言设置。

因为某些语言需要重新启动,我们建议在 windowsPE 配置阶段配置语言设置,因为计算机始终会重新启动。如果在 specializeoobeSystem 阶段处理语言设置,计算机可能还需要另外重新启动一次。

对 LocalAccounts 使用 Sysprep/generalize 命令以更改帐户信息

可以使用 sysprep 命令和 generalize 选项和 LocalAccounts 设置更改现有用户帐户的帐户信息。

在以下示例中,如果您在 specialize 配置阶段中指定设置,则 NEWVALUE 的所有值都将更改。不过,MyAccount 仍将保留其安全组成员身份。MyAccount 将被视为 具有不同显示名称、描述和密码值的同一帐户。

<LocalAccount>
   <Name>MyAccount</Name>
   <DisplayName>NEWVALUE</DisplayName>
   <Description>NEWVALUE</Description>
   <Password>
      <PlainText>false</PlainText>
      <Value>NEWVALUEBASE64</Value>
   </Password>
</LocalAccount>

有关使用 Generalize 命令的详细信息,请参阅准备捕获映像进行部署(一般化)

另请参阅

概念

操作实例:为基于 BIOS 的计算机构建答案文件
操作实例:为基于 UEFI 的计算机构建答案文件