解决方案我们进入 XP 后,使用 Vista 的系统安装光盘,找到如下文件: X://BOOT//bootsect.exe,然后在命令行下如下运行:
bootsect /nt60 c: /force
之后取出光盘,重新启动计算机,系统会自动进入Vista。
以管理员模式运行命令行,然后输入如下命令:
bcdedit -displayorder {ntldr} -addlast
如果成功,会提示:“操作成功完成”。
然后再次重新启动计算机,我们将看到 Windows 启动管理器的界面:
上面是比较理想的情况,如果输入 Bcdedit -displayorder {ntldr} -addlast 后提示出错,或者重新引导系统没有成功进入 Windows 启动管理器,我们需要作一些调试操作了。
进入 Vista 后,在“开始” --> “所有程序” --> “附件” --> “命令提示符”上点右键,选择“以管理员模式运行”打开 cmd窗口 ,然后使用如下命令查看 BCD 中显示的内容:
bcdedit
这张图可以看出BCD内部的数据。一个根节点是“Windows 启动管理器”,下面有两个加载节点,一个是旧OS的,这里就是 XP ,标识符是 {ntldr} 。还有一个是 Vista 的,标识符是 {current} 。 如果这里看不到旧OS加载器,可能是 BCD 的 {ntldr} 节点出问题造成了,我们可以删除重建:
bcdedit -delete {ntldr} -f
使用如下命令创建节点:
bcdedit -create {ntldr} -d “Windows XP”
后面引号中的内容是最后界面上提示的内容,可以随意输入。
再使用如下命令设置节点参数,要完成引导,需要设置两个参数:
bcdedit -set {ntldr} device partition=c:
bcdedit -set {ntldr} path //ntldr
一个是设置了默认的系统分区路径,一个是设置了 ntldr 这个文件的位置。
设置好之后,我们就重新建立的 {ntldr} 节点,虽然我们在 bcdedit 中看不到。
最后我们再用最初使用过的这条命令让这个节点出现在 bootmgr 界面的最下方:
bcdedit -displayorder {ntldr} -addlast
如图:
再次重新启动,一般可以看到多系统引导的界面了。