网络升级过程的 Winnt32 阶段

注意microsoft Windows XP (SP1 及更高版本) 、microsoft Windows Server 2003 和更高版本的操作系统中不支持供应商提供的网络升级。

用户或系统管理员可以通过执行以下任一操作来启动升级过程:

  • 在 Windows 2000 或更高版本的 cd-rom 启动后显示的用户界面中选择组件升级

  • 在 cd-rom 上选择并运行 \i386\winnt32.exe

如果用户或系统管理员已在要升级的系统上设置 NETUPGRD_INIT_FILE_DIR 环境变量,则 NetSetup 会在该变量指定的目录中搜索 netupg 文件。 Netupg 文件仅包含一个部分: OemNetUpgradeDirs。 本部分中的每个条目都指定一个目录的完整路径,该目录包含用于网络组件的供应商提供的升级文件(包括 netmap 文件)。 如果未设置 NETUPGRD_INIT_FILE_DIR 环境变量,则 NetSetup (netupgrd.dll) 在其自己的目录中查找 netmap 文件。

NetSetup 读取 netmap 文件来识别没有内置升级支持的网络组件。 如果 NetSetup 在无人参与模式下运行,则会显示一个向导;但是,用户或系统管理员不能使用该向导。 如果 NetSetup 未在无人参与模式下运行,则向导将显示没有内置升级支持的网络组件的列表。

用户或系统管理员可以使用该向导执行以下操作:

  • 单击 " 取消 " 以中止操作系统的安装。

  • 单击 " 下一步 " 以安装操作系统而不升级列出的网络组件。

  • 为列出的网络组件指定供应商提供的升级文件的驱动器和目录位置。

    NetSetup 读取指定位置的 netmap 文件,并将该位置的供应商提供的升级文件复制到系统硬盘上的临时目录中。 此临时目录将成为供应商提供的网络迁移 DLL 的工作目录。 NetSetup 还会从向导中的组件列表中删除包含 netmap 文件的任何组件。

NetSetup 在 $Win _nt $. ~ bt 目录(通常位于 C:驱动器上) (也称为 AnswerFile) 。

NetSetup 生成 AnswerFile,如下所示:

  1. NetSetup 读取 preupgraded 系统的注册表以枚举每个网络组件。 对于具有内置升级支持的每个网络组件,NetSetup 将从注册表中读取的信息写入 AnswerFile。

  2. 对于不具备内置升级支持的每个网络组件,NetSetup 将读取组件的 netmap 文件。 Netmap 文件将网络组件的 preupgrade 设备、硬件或兼容 ID 映射到升级后的操作系统中的相应 ID。 如果 NetSetup 与在 OemNetProtocols 文件的 OemNetAdaptersOemNetServicesOemAsyncAdaptersnetmap 部分中使用 preupgrade ID 从注册表读取的网络组件的 preupgrade id 相匹配,NetSetup 会将供应商提供的有关组件的信息写入到 AnswerFile。

  3. 使用组件的操作系统设备、硬件或兼容 ID NetSetup 读取 netmap 文件的 OemUpgradeSupport 部分,以确定要加载的网络迁移 DLL。 NetSetup 然后加载网络迁移 DLL,并调用 DLL 的 PreUpgradeInitialize 函数。 PreUpgradeInitialize函数提供 DLL 用于初始化自身的信息。

  4. NetSetup 将为网络迁移 DLL 支持的每个网络组件调用一次 DLL 的 DoPreUpgradeProcessing 函数。 DoPreUpgradeProcessing 从注册表中读取网络组件的 preupgrade 参数值,并调用 NetUpgradeAddSectionNetUpgradeAddLineToSection 函数将这些参数与其他特定于组件的信息一起写入到 AnswerFile。 DoPreUpgradeProcessing 还可以通过在 AnswerFile 中做出适当的输入来迁移与 preupgraded 组件关联的二进制数据。

  5. 完整生成 AnswerFile 后,NetSetup 会将供应商提供的升级文件复制到相应的目录中,然后启动到升级过程的文本模式阶段。