文章编号: 314057 - 查看本文应用于的产品
本文的发布号曾为 CHS314057
有关本文的 Microsoft Windows 2000 版本,请参见 255220
展开全部 | 关闭全部

症状

当试图在一台运行 Microsoft Windows 95、Windows 98 或 Windows Millennium Edition 的计算机上安装 Microsoft Windows XP 或者升级到 Windows XP 时,在安装过程中的第一次重新启动后,可能会收到以下错误信息:
NTLDR is missing
Press any key to restart

原因

如果克隆现有的 Windows 95、Windows 98 或 Windows Millennium Edition 的安装,然后应用于与克隆副本的源驱动器有不同布局的驱动器上,可能会出现此问题。

例如,您在 4 GB 驱动器上运行 Windows 98。在升级到 30 GB 硬盘后,您使用第三方磁盘映像实用工具制作 Windows 98 安装的镜像,然后将该映像应用于新驱动器。之后,您升级到了 Windows XP。为此,您在克隆的 Windows 98 映像上安装了 Windows XP。

必须满足以下所有条件,才会出现此问题:
  • 系统/启动分区使用 FAT32 文件系统进行格式化。
  • 计算机使用 INT-13 扩展进行启动。(这是一个大于 7.8 GB 的分区,它在分区表中的系统 ID 类型为 0C)。
  • 由于克隆过程,造成了 FAT32 BIOS 参数块 (BPB) 中的头(边)值与物理驱动器的布局不匹配。
Windows 95、Windows 98 或 Windows Millennium Edition 启动代码忽略 BPB 中的头值,并且即使在值无效时仍启动程序。但 Microsoft Windows 2000 和 Windows XP 中的安装代码需要此值,如果此值无效,则启动不能成功。

解决方案

要解决此问题,请更正 FAT32 BPB 中的头(边)值,使 Windows XP 启动能够继续。要更新此值,请重写 Windows 95、Windows 98 或 Windows Millennium Edition 的启动代码。为此,请按照下列步骤操作:
  1. 通过使用包含 Sys.com 文件的 Windows 95、Windows 98 或 Windows Millennium Edition 启动盘重新启动计算机。(默认情况下包括此文件。)
  2. 在系统驱动器的根目录中制作 Msdos.sys 文件的备份副本。为此,请在命令提示符下键入以下命令:
    attrib -h -r -s c:\msdos.sys
    rename msdos.sys *.ysy
  3. 在命令提示符处,键入 sys c: 以便用准确的 BPB 信息重写 Windows 95、Windows 98 或 Windows Millennium Edition 的启动代码。如果此命令运行成功,请转到步骤 4。

    如果您使用 Windows Millennium Edition 启动盘,并收到以下错误信息,则可能是因为已经删除了 Windows Millennium Edition 安装程序中的一个或多个文件:
    Cannot find the system file in the standard locations on drive C:
    按照下面的步骤将正确的文件放置到驱动器上,使 sys 命令可以找到它们:
    1. 键入下面的命令。在键入每个命令后按 Enter:
      c:
      cd\windows
      如果将 Windows 安装到与 Windows 文件夹不同的文件夹中,请相应地调整命令。
    2. 键入以下命令尝试切换到 Command 文件夹:
      cd command
      如果您收到找不到路径的错误信息,请键入以下命令创建 Command 文件夹,然后再次运行 cd command 命令:
      md command
    3. 键入以下命令切换到 EBD 文件夹:
      cd ebd
      如果您没有收到找不到路径的错误信息,请键入以下命令创建 EBD 文件夹,然后重复 cd ebd 命令:
      md ebd
    4. 在 EBD 文件夹中,使用以下命令复制硬盘根目录下的 Io.sys 文件,并将 Io.sys 文件重命名为 Winboot.sys:
      attrib -s -h -r c:\io.sys
      copy c:\io.sys winboot.sys
      Winboot.sys 是 Sys.com 需要的文件。
    5. 切换回驱动器 A,然后键入以下命令:
      a:
      sys c:
    键入以下命令恢复原始的 Msdos.sys 文件。在键入每个命令后按 Enter:
    attrib -s -h -r c:\msdos.sys
    copy c:\msdos.ysy c:\msdos.sys
    按 Y 覆盖现有的 Msdos.sys 文件。会收到文件被改写的“1 FILE(S) COPIED”确认。
  4. 将计算机重新启动到 Windows 95、Windows 98 或 Windows Millennium Edition,然后尝试重新安装或升级到 Windows XP。

    注意:也可以在运行 sys c: 命令后,启动到故障恢复控制台,然后使用 fixboot 命令重写 Windows XP 启动代码。使用此过程,原始安装会正常继续。

状态

Microsoft 已经确认这是在“适用于”一节中列出的 Microsoft 产品中存在的问题。

更多信息

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
178947 Err Msg:找不到注册表文件。注册表服务可能……
318948 Windows 2000 或 Windows NT 4.0 升级期间出现“NTLDR is missing or corrupt”(缺少 NTLDR 或 NTLDR 已损坏)错误信息

属性

文章编号: 314057 - 最后修改: 2005年11月17日 - 修订: 3.1
这篇文章中的信息适用于:
  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional Edition
关键字:?
kberrmsg kbfilesystems kbenv kbsetup kbprb kbacwsurvey KB314057
Microsoft和/或其各供应商对于为任何目的而在本服务器上发布的文件及有关图形所含信息的适用性,不作任何声明。 所有该等文件及有关图形均"依样"提供,而不带任何性质的保证。Microsoft和/或其各供应商特此声明,对所有与该等信息有关的保证和条件不负任何责任,该等保证和条件包括关于适销性、符合特定用途、所有权和非侵权的所有默示保证和条件。在任何情况下,在由于使用或运行本服务器上的信息所引起的或与该等使用或运行有关的诉讼中,Microsoft和/或其各供应商就因丧失使用、数据或利润所导致的任何特别的、间接的、衍生性的损害或任何因使用而丧失所导致的之损害、数据或利润不负任何责任。

提供反馈

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com