XP and Windows 7 dual boot problem


Hello All,

I am getting this error while dual booting XP and Windows 7, i have read the F.A.Qs and tried what it say but nothing seems to help.

"Windows could not start because the following file is missing or corrupt:

<Windows root>\system32\ntoskrnl.exe.

Please re-install a copy of the above file"

View Settings in Easy BCD 2.0

There are a total of 2 entries listed in the bootloader.
Default: Windows 7
Timeout: 30 seconds.
Boot Drive: C:\
Entry #1
Name: Windows 7
BCD ID: {current}
Drive: C:\
Bootloader Path: \Windows\system32\winload.exe
Entry #2
Name: Microsoft Windows XP
BCD ID: {f087dce2-0d41-11df-9e21-be39c8e4ae2a}
Drive: C:\
Bootloader Path: \NTLDR

i have tried deleting and creating a new entry for xp several times but it didn't work

below is the content of boot.ini

[boot loader]
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional"/fastdetect

i have tried chaning the values to rdisk(1)partition(1)

and serveral other values for rdisk and partition

but nothing seems to work.

FYI Windows 7 is Installed in C: Drive and Windows XP is install in D:

Please help me out.

EDIT: PROBLEM SOLVED, sorry for posting this thread, i re-read the XP Troubleshooting and understood how the numbering works for the different partitions and tried a couple of combination, finally it worked.

Thanks a lot. Your Site helped me a lot.

Sorry again for posting this thread.
Last edited:
You're welcome :smile:

Most likely you ran into a bug in EasyBCD 2.0 build 76 that prevented it from automatically fixing it with the auto-configure option. EasyBCD 2 Build 77 should fix that.
maybe a bug, because every time i tried to auto-configure the boot.ini file, it will add the values

rdisk(1), partition(1)

i only have one hard disk, so rdisk should be (0) and partition(value) accordingly

but finally am glad that it worked, thanks to you all for posting relevant information on this Forum.

Can you please do me a favor:

EasyBCD | Useful Utilities | Power Console

Type in "bootgrabber.exe /list" then copy and paste the output here? It should explain why it used rdisk(1) instead of rdisk(0) :smile:
CG. Saw this post and just for interest, ran bootgrabber to see what the output looked like.
What I found didn't seem to make complete sense, so I started digging around and discovered some unusual Windows 7 behaviour which might be responsible for occasional confusion.

I run W7 99% of the time, but due to it being the "new boy" of my quad-boot, it's not on my disk 0.
I have an unconventional boot described back here, where I boot all of my systems from a small B:\ partition with a custom HnS, and as you can see from this historic attachment, it means that my running OS is normally on disk 1.

When I ran bootgrabber it showed my W7 (C:\) as disk 0, which seemed wrong, so I ran DM and found that Windows 7 was seeing it as 0 too (see "before" attachment - apologies that I captured it scrolled out of view)

Rebooted my system and did it again and everything was back as I expected with W7 as disk 1, and this time bootgrabber reflected that too (see "after" )

I thought that bootgrabber found disk numbers from the BIOS, and I know there's always been a DM problem in Vista and W7 if IDE and SATA were mixed, but my system is all SATA now, so I expected DM to follow the BIOS too.

I've changed absolutely nothing on my system(s) for some time, and nothing in the BIOS for years, so something strange is going on.

Don't know if it's any help in discovering why BG sometimes behaves unexpectedly.


  • before.JPG
    232.9 KB · Views: 13
  • after.JPG
    232 KB · Views: 9
Interesting... That *would* explain the incorrect rdisk() values being assigned in certain cases. Except it's even weirder: yesterday there was a guy with just *one* disk in his machine, and BootGrabber (therefore Windows 7) was seeing it as disk1 and not disk0!!

BootGrabber gets the values it shows on the screen from Windows and then it double-checks that the values are accepted by the BIOS by attempting to use the ARC path to open the same drive: multi(w)disk(x)rdisk(y)partition(z) - so it's some sort of "dual verification system."

What am I supposed to do if Microsoft's OS is broke?!

However, this does not explain the *crashes* in BootGrabber, which are my primary concern ATM. Problem with those is, no one sticks around to provide me with crashdumps after reporting that BootGrabber crashes.