Invalid Boot.ini

I have idea what happened to my computer! I dual-boot with vista and xp.

At first, Vista stopped booting. I tried fixing it but ultimately got rid of the vista boot menu entirely but it booted straight to vista. Vista however, didn't boot. I had to reinstall it because the vista repair disc said my version of vista was diferent. After I reinstalled vista, the boot menu came back, but Xp wouldn't boot. Instead I get this error:

Invalid boot.ini
Booting from C:\Windows\
NTDETECT failed.

My Vista installation is on drive C. My XP installation is on Drive E. However, they are all on the same hard drive, just different partitions. I already replace the NTDETECT and NTLDR in E/.

Here is my boot.ini from drive E:

;Warning: Boot.ini is used on Windows XP and earlier operating systems.
;Warning: Use BCDEDIT.exe to modify Windows Vista boot options.
[boot loader]
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Home Edition" /FASTDETECT

Here is something from easybcd:


There are a total of 2 entries listed in the Vista Bootloader.
Bootloader Timeout: 30 seconds.
Default OS: Microsoft Windows Vista

Entry #1

Name: Microsoft Windows Vista
BCD ID: {current}
Drive: C:\
Bootloader Path: \Windows\system32\winload.exe
Windows Directory: \Windows

Entry #2

Name: Microsoft Windows XP
BCD ID: {89412d7e-4ef5-11dd-850e-00044b029781}
Drive: E:\
Bootloader Path: \NTLDR


Windows Boot Manager
identifier {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device partition=D:
description Windows Boot Manager
locale en-US
inherit {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default {27fb9fc1-4ef6-11dd-9f4b-00044b029781}
resumeobject {27fb9fc2-4ef6-11dd-9f4b-00044b029781}
displayorder {27fb9fc1-4ef6-11dd-9f4b-00044b029781}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout 30
Windows Boot Loader
identifier {27fb9fc1-4ef6-11dd-9f4b-00044b029781}
device partition=C:
path \Windows\system32\winload.exe
description Microsoft Windows Vista
locale en-US
inherit {6efb52bf-1766-41db-a6b3-0ee5eff72bd7}
osdevice partition=C:
systemroot \Windows
resumeobject {27fb9fc2-4ef6-11dd-9f4b-00044b029781}
nx OptIn
Real-mode Boot Sector
identifier {89412d7e-4ef5-11dd-850e-00044b029781}
device partition=E:
path \NTLDR
description Microsoft Windows XP

I don't know why bootmgr is in drive D. It has no operation system on it and it is a separate hard drive. I have bootmgr on both xp and vista partitions. Is that the problem?

Thank You!


  • bcdedit.jpg
    69.8 KB · Views: 4
Change partition(1) to partition(2) for both the default entry under [boot loader] and OS entry under [operating systems].
Thanks. I will try it later and tell you what happens.


You did mean altering boot.ini right? Anyways, I tryed it and it didn't work. It keeps saying Booting from C:\Windows\, like earlier.
Last edited:
The 3 XP boot files need to be on the "active" partition. Check which that is in disk management, (probably Vista), and copy the files from E:\ to C:\ if it is.
It could be that XP is on an extended partition. Change them back to partition(1) then and follow Terry's advice. If that doesn't work, try changing it to partition(3).
Do the following pics make any sense to you?

I already tired changing it to partitions 0,1,2,3 lol.


  • Disk Management.jpg
    Disk Management.jpg
    47.5 KB · Views: 9
  • Drive D.jpg
    Drive D.jpg
    41.8 KB · Views: 2
I need to see the graphical view of the disks from disk management to further help you, as partions can be assigned just about any drive letter.
Both D and E are marked active, so must be on different physical HDDs. Whichever one is first in the boot sequence is where the system is looking to find your boot files. Make sure the BIOS is picking the disk you want, as 1st choice HDD (after the optical and floppy).
It's definitely not C:\.
Either copy the files to D:\, or reset the boot sequence, and do as Justin asks and post the lower part of the dsk mgmt screen, so we can see the partitions in physical relation to each other.
I think that D:\ is the answer.
Last edited:
Unless your D:\ disk is IDE and the other is SATA (in which case Vista dsk mgmt and the BIOS don't necessarily agree on disk numbers), then all of your Vista and XP boot files should be on the D:\ partition. Since Vista is booting you can verify this by simply checking that the boot folder and bootmgr are both in D's root (make sure system files aren't hidden).
If they are there, then copy the 3 XP files in there too, and change boot.ini to point at rdisk(1) partition(2)
Look in the root of each partition and see where the boot folder and bootmgr reside. Thats's where Vista's booting from and where you should put the XP files.
Look in the root of each partition and see where the boot folder and bootmgr reside. Thats's where Vista's booting from and where you should put the XP files.

I have a boot folder in both of my partitions: D,E. However, it is not in my Vista partition.
In addition, I have bootmgr in all three of my partitions.
Last edited:
OMG Guys!!!:joy: No need anymore! Apparently, I just had to switch the boot priority as Terry had said! Thanks man! I then just had to relist the entry for xp in easybcd and voila!