我的旧 WinXP SP3 机器上的硬盘出现故障,我使用 Macrium Reflect 7 Free(以及 SpinRite 6 和 Beyond Compare)挽救了操作系统和数据,并将它们克隆/复制到新硬盘上。经过多个步骤(见下文),每次我尝试将 Macrium Recovery 选项添加到启动菜单时,我都无法启动 Windows XP(\ntldr 丢失或损坏),并且我又得到了一个无法正常工作的 Macrium Recovery 选项(所需设备无法访问)。两者的错误代码相同,0xc000000e。
菜单上确实有一个可以运行的 Macrium Recovery 选项,因此每次发生这种情况时,我都可以进入它,运行 bootfix,然后重新启动 - 然后我可以再次在新磁盘上启动 Windows XP,但不再有启动菜单。下次我再次尝试添加恢复选项时,列表中又添加了一个无法运行的 Macrium Recovery 选项 - 除了无法运行的 Windows XP 条目外,现在我最多有 4 个无法运行的选项和一个可以运行的选项。
我怀疑问题与安装在旧硬盘上的 Macrium Reflect 副本有关,该副本仍然存在(我不断在旧磁盘上发现文件不知何故没有进入新磁盘,所以我会保留旧磁盘,直到我确定我需要的所有内容都已删除)。克隆/复制到新磁盘后,我在主板上来回切换了几次 SATA 电缆,因为我重新为分区分配了字母,并为旧磁盘上的分区赋予了新的卷名,这样我就不会混淆它们,使用 AOEMI 分区助手在新磁盘上添加了新的逻辑驱动器,并将新的 C: 分区从 FAT32 转换为 NTFS(具有连续的 MFT),以便我可以创建 Macrium 救援磁盘。这是一台戴尔 PC,没有附带 Windows 安装磁盘,因此我一直在使用推荐的 WinPE 3.1 作为我的 Macrium 救援媒体。我还思考我成功地将 Macrium Recovery 选项添加到启动菜单中,但我不确定当时是从哪个磁盘启动的,但我想我可能是从旧磁盘启动的。
我第一次发现有些不对劲是在我将 C: 转换为 NTFS 后成功启动到新磁盘,并尝试创建它的备份映像之后。它在尝试拍摄 VSS 快照时一直挂起。在查看时,我发现新磁盘上缺少一个 Macrium 驱动程序文件(我认为是 wimmount.sys)。手动复制它没有帮助,运行修复安装也没有帮助,所以我从新磁盘卸载了试用版,并从头开始重新安装了免费版。现在我至少能够成功对磁盘进行映像。但是,当我重新启动计算机时,我没有看到我的启动菜单。就在那时,我开始尝试再次创建它,并开始在启动菜单上获得重复的条目,其中只有一个真正起作用。
我已经为此烦恼了一段时间,现在我感到很沮丧。我不知道在哪里可以找到将条目放入启动菜单的配置文件。它们必须是 Macrium 文件而不是 Windows 文件,因为 boot.ini 仍然显示由 fixboot 放入的内容。ntldr、ntdetect.com 和 boot.ini 都存在于新旧磁盘(C: 驱动器和现在的 P: 驱动器)上,所以我不确定启动管理器在哪里寻找它们。新 C: 上有一个 bootmgr 文件,但旧启动分区(现在是 P:)上没有。
任何熟悉 WinXP 和 Macrium Reflect 的人有什么建议吗?我希望最终得到一个启动菜单,其中包含一个新硬盘上的 Windows XP 条目和一个 Macrium Recovery 条目。
谢谢,
丽贝卡
答案1
解决。
最终,我弄清楚了 Macrium 所做的就是添加 Microsoft BOOTMGR 引导加载程序(Windows Vista 及更高版本附带)和 BCD 存储,以便与 XP 附带的 NTLDR 引导加载程序一起使用,然后将 Macrium Reflect System Recovery 的条目添加到 bootmgr 引导菜单中。在再次将 Macrium Reflect System Recovery 添加到引导菜单后,我还碰巧在注册表中搜索“Macrium Reflect System Recovery”找到了 BCD 数据。我可以看到一堆与菜单上不起作用的恢复条目相对应的相同条目。
非常感谢 NeoSmart 提供这些知识库文章,它们帮助我了解正在发生的事情:
https://neosmart.net/wiki/easybcd/dual-boot/windows-xp/
https://neosmart.net/wiki/0xc000000e_selected_entry_could_not_be_loaded/
可能是因为我的电脑上有两个 ntldr 副本(一个在新磁盘的 C: 上,另一个在 P: 上,即旧磁盘的 C: 上),Macrium 或 bcdedit 无法在 BCD 中为 Windows XP 设置设备,因此启动菜单中的该条目不起作用。然后,每次我运行 bootfix 以恢复启动 XP 的能力时,它都会从注册表中删除 BCD 信息并切换到仅使用 boot.ini 进行启动,但它从未从 bootmgr 启动菜单中删除已删除条目的名称。
我最终下载了 EasyBCD Free,它让我轻松查看并删除空的启动菜单项。然后,通过输入 C: 作为 Legacy 启动管理器的设备,我能够让该条目启动 ntldr,从而启动 Windows XP。
耶!
丽贝卡