Windows Vista no longer starts after you install an earlier version of the Windows operating system in a dual-boot configuration
After you install an earlier version of the Windows operating system on a
Microsoft Windows Vista-based computer in a dual-boot configuration, you may
experience one of the following issues:
- If you install an earlier version of the Windows operating system on a
Windows Vista-based computer, Windows Vista no longer starts. In this case,
only the earlier version of the Windows operating system starts.
- If you install an additional instance of Microsoft Windows XP on a
computer where Windows XP and Windows Vista are already installed in a
dual-boot configuration, you may receive the following error message:
These issues occur because earlier versions of the Windows operating
system are incompatible with the new Windows Vista startup method. Windows
Vista uses a new Boot Configuration Database (BCD) store. This store contains
a boot menu and all the information about operating systems that are
installed on the computer. Therefore, a Boot.ini file that is from an earlier
version of the Windows operating system cannot be used to start Windows
Vista.
In earlier versions of the Windows operating system that run on a basic
input/output system (BIOS)-based computer, such as Windows XP, the boot
process starts with the system BIOS. The BIOS determines the boot device, and
then loads the first physical sector. This physical sector is named the
master boot record (MBR). The MBR contains the partition table and the
necessary boot execution code. This code searches the partition table to find
the active partition and passes control to the boot sector on the active
partition. Then, the boot sector on the active partition loads the Ntldr
program. The Ntldr program parses the Boot.ini file. This file is used to
enumerate the operating systems that are installed.
When Windows Vista starts on a BIOS-based computer, the BIOS loads the MBR
and then loads the boot sector. However, boot code loads the new Windows Boot
Manager program (Bootmgr). The Windows Boot Manager program parses the binary
coded decimal (BCD) Boot.ini file, enumerates the installed operating
systems, and then displays the boot menu. If an earlier version of the
Windows operating system is installed in a dual-boot configuration with
Windows Vista, the Windows Boot Manager program transfers control to the
Ntldr program for the earlier version of the Windows operating system. The
Windows Boot Manager program does this when you select Windows Vista from the
boot menu.
When you install an earlier version of the Windows operating system on a
Windows Vista-based computer, Setup overwrites everything from the MBR, the
boot sector, and the boot files. Therefore, the earlier version the Windows
operating system loses forward compatibility with Windows Vista.
To resolve these issues, follow these steps.
Note You can run the commands in the following procedure by using the
command prompt. If you run these commands in Windows Vista, run them at a
command prompt that has elevated user rights. To do this, click Start, click
Accessories, right-click the command-prompt shortcut, and then click Run as
Administrator.
- Use Bootsect.exe to restore the Windows Vista MBR and the boot code
that transfers control to the Windows Boot Manager program. To do this,
type the following command at a command prompt: Drive:\boot\Bootsect.exe
/NT60 All
In this command, Drive is the drive where the Windows Vista installation
media is located.
Note The boot folder for this step is on the DVD drive.
- Use Bcdedit.exe to manually create an entry in the BCD Boot.ini file
for the earlier version of the Windows operating system. To do this, type
the following commands at a command prompt.
Note: In these commands, Drive is the Drive where
Windows Vista is installed.
Drive:\Windows\system32\Bcdedit /create {ntldr} /d "Description
for earlier Windows version"
Note: In this command, Description for earlier Windows version can
be any text that you want. For example, Description for earlier Windows
version can be "Windows XP" or "Windows Server 2003".
- Drive:\Windows\system32\Bcdedit /set {ntldr} device
partition=x:
Note: In this command, x: is the Drive letter for the
active partition.
- Drive:\Windows\system32\Bcdedit /set {ntldr} path
\ntldr
- Drive:\Windows\system32\Bcdedit /displayorder {ntldr}
/addlast
- Restart the computer.
Microsoft
Reference:
Boot Configuration Data Editor Frequently Asked Questions
|