Multiple XP installations - only one shows

doniel

Active Member
I have XP installed on several drives. I've always been able to boot into any of them that I wanted to. I recently installed Win7 on yet another drive, and my boot menu changed to Windows 7 and Earlier version of Windows. (While these installations are spread over three physical drives, there are more than three installations, so "several drives" also means different logical drives.)

I installed EasyBCD an hour ago, added entries for each of the XP installations, and deleted the entry for Earlier version of Windows. When I rebooted, only one XP entry was displayed. I deleted the entry for Windows 7 and added a new entry for it, and it was then displayed upon reboot.

But I have no idea why the other XP entries are showing in EasyBCD, but not in the boot menu.

I noticed that in View Settings, each entry shows drive C (even though I entered the proper drive letter for each of them when creating the entries), but I note that the entry for the one XP installation that shows in the boot menu also specifies C, despite the fact that that's not where that XP is installed.
 
Last edited:
Thank you for your reply. I looked at the documentation. That explains why all the entries specify C. It doesn't explain why only one XP entry shows in the boot menu.
 
Read it again.
It explains exactly why.
MS boot architecture does not allow more than one BCD entry for multiple XP installations
It chains to NTLDR which displays a second menu with multiple choices.
It also explains how to use NST's EasyLDR to circumvent the MS restriction.
 
Please post the contents of EasyBCD's detailed mode here.

Actually, upgrade to EasyBCD 2.1 first and try readding the entries.
 
No need to upgrade - already using 2.1

Windows Boot Manager
--------------------
identifier {9dea862c-5cdd-4e70-acc1-f32b344d4795}
device partition=C:
description Windows Boot Manager
locale en-US
inherit {7ea2e1ac-2e61-4728-aaa3-896d9d0a9f0e}
default {7a57ce00-951c-11e0-85ed-cec351410c4e}
resumeobject {7a57cdfc-951c-11e0-85ed-cec351410c4e}
displayorder {7a57ce00-951c-11e0-85ed-cec351410c4e}
{7a57ce01-951c-11e0-85ed-cec351410c4e}
{7a57ce02-951c-11e0-85ed-cec351410c4e}
{7a57ce03-951c-11e0-85ed-cec351410c4e}
{7a57ce04-951c-11e0-85ed-cec351410c4e}
{7a57ce05-951c-11e0-85ed-cec351410c4e}
{7a57ce00-951c-11e0-85ed-cec351410c4e}
{7a57ce06-951c-11e0-85ed-cec351410c4e}
toolsdisplayorder {b2721d73-1db4-4c62-bf78-c548a880142d}
timeout 10
displaybootmenu Yes
Real-mode Boot Sector
---------------------
identifier {7a57ce00-951c-11e0-85ed-cec351410c4e}
device partition=C:
path \NST\easyldr1
description Microsoft Windows XP - G
Real-mode Boot Sector
---------------------
identifier {7a57ce01-951c-11e0-85ed-cec351410c4e}
device partition=C:
path \NST\easyldr2
description Microsoft Windows XP - J
Real-mode Boot Sector
---------------------
identifier {7a57ce02-951c-11e0-85ed-cec351410c4e}
device partition=C:
path \NST\easyldr3
description Microsoft Windows XP - T (J)
Real-mode Boot Sector
---------------------
identifier {7a57ce03-951c-11e0-85ed-cec351410c4e}
device partition=C:
path \NST\easyldr4
description Microsoft Windows XP - F
Real-mode Boot Sector
---------------------
identifier {7a57ce04-951c-11e0-85ed-cec351410c4e}
device partition=C:
path \NST\easyldr5
description Microsoft Windows XP - Q (G)
Real-mode Boot Sector
---------------------
identifier {7a57ce05-951c-11e0-85ed-cec351410c4e}
device partition=C:
path \NST\easyldr6
description Microsoft Windows XP - P (F)
Windows Boot Loader
-------------------
identifier {7a57ce06-951c-11e0-85ed-cec351410c4e}
device partition=L:
path \Windows\system32\winload.exe
description Microsoft Windows 7
locale en-US
osdevice partition=L:
systemroot \Windows
 
OK, and when you reboot you only see Windows 7 and one XP entry?

That means you're booting from a different BCD store than the one EasyBCD is editing. Paste the contents of EasyBCD's "normal mode" please?
 
Computer Guru, I find it hard to believe that I'm booting from a different BCD store than the one EasyBCD is editing. Here's why. I installed Easy BCD for the first time on Thursday. I added entries for each of my XP installations. I removed the "Earlier version of Windows" entry. I left the original Windows 7 entry. When I rebooted, the menu only displayed one choice: my first XP entry. I removed the original Windows 7 entry and added a new entry for Windows 7. Upon rebooting, Windows 7 now showed in the menu. That's it. The two items now showing in the menu could only have come from the above. I don't know what other store there could be.

I'm not sure what you mean by EasyBCD's "normal mode." Could you be more specific, please?

Terry, C: is the first partition on disk 0. If I provide you with a Disk Management screenshot from Windows 7, you'll see C: differently, since Windows 7 automatically switches the Windows 7 partition (last partition on disk 1) to C: I wish I could get Windows 7 to stop doing that. Do you know of any way?
 
Yes. So it's 100% clear, let me explain my setup. C: contains my boot files. There's no Windows installation on that partition. These days, I'm in XP just about all of the time. So I'm booting from C: into G: When I do boot into Windows 7, I'm booting from C: into L:, but Windows 7 then assigns C: to L: (L: becomes C:,), and C: doesn't get a drive letter at all!
 
Last edited:
All booted OSs have their own registry map of disk letters. If W7 thinks it's C, what does it call the boot partition ?
That's what all the BCD entries should point to.
Set folder entries like this (boot files are "super hidden") and look in the W7 partition and "your" boot partition.
Do both have "x:\boot" folders ?
 
Okay, I booted into Windows 7 to get you accurate answers. Interestingly, my boot partition doesn't show up in Windows Explorer. In Disk Management, it's the only drive with no letter assigned to it. Only its volume id is displayed. For what it's worth, my boot partition has the following attributes: System, Active, Primary Partition. My Windows 7 partition: Boot, Page File, Crash Dump, Primary Partition.

One of the first things I do when installing Windows is to set those folder options to show all file types and extensions, so that was already done.. Only my boot partition has a \boot folder. My Windows 7 partition does not.

Unless I'm missing something, this is all irrelevant. My boot partition only loses its drive assignment and my Windows 7 partition only becomes C: after Windows 7 gets ahold of them. At boot time - before Windows 7 loads - my boot partition (as mentioned in an earlier post, the first partition of disk 0) is where all the BCD entries point, which is as it should be.
 
Last edited:
There are no drive letters in the BCD, just UIDs which locate a partition by the unique drive serial number and the partition start position. There are no drive letters on the partitions either. They're just virtual labels in the registry of the running system. When EasyBCD says "C", it's just translating the UID into a drive letter as seen from the running OS so that it is more easily understood.
If EasyBCD on W7 says C, it means the W7 partition, not the boot partition.
When MS says "boot", it means "this is the running system"
likewise "system" means "this is where the boot files reside which were used to start the running system" and "active" is the flag which tells the MBR IPL where to find the boot files.
In your case, the unlettered partition is "active" "system" so that's where the boot files are, and that's where all the "C" entries in your BCD should be pointing.
What CG meant by "normal" is the "overview" button rather than "detailed" in "view settings".
Somehow your BCD's idea of where it resides is corrupted.
When you say you boot from your own boot partition, have you been using (are you still using) some 3rd party boot program ?
 
One point I definitely did not make clear is that I installed EasyBCD under WinXP, where all my drive letters are exactly as they should be. Thus, all the entries pointing to C: are pointing to the first partition on disk 0. I have not installed EasyBCD under Windows 7.

I'm not using a 3rd party boot program. I'm not sure which statement of mine gave you the idea that I'm booting from "my own boot partition."

If my BCD's idea of where it resides is corrupted, how come two of the entries (one Xp and Win7) are showing on the boot menu?

As a side question, I simply lose a partition (that unlettered one) when I boot into Windows 7. There's nothing that can be done about that? I'm surely not the only one who's installed Windows 7 on a partition other than C:. Are all those people also losing their C: partition?

Here's overwiew mode of EasyBCD.

There are a total of 7 entries listed in the bootloader.
Default: Microsoft Windows XP - G
Timeout: 10 seconds
EasyBCD Boot Device: C:\
Entry #1
Name: Microsoft Windows XP - G
BCD ID: {default}
Drive: C:\
Bootloader Path: \NST\easyldr1
Entry #2
Name: Microsoft Windows XP - J
BCD ID: {7a57ce01-951c-11e0-85ed-cec351410c4e}
Drive: C:\
Bootloader Path: \NST\easyldr2
Entry #3
Name: Microsoft Windows XP - T (J)
BCD ID: {7a57ce02-951c-11e0-85ed-cec351410c4e}
Drive: C:\
Bootloader Path: \NST\easyldr3
Entry #4
Name: Microsoft Windows XP - F
BCD ID: {7a57ce03-951c-11e0-85ed-cec351410c4e}
Drive: C:\
 
Last edited:
OK. If you're running EasyBCD on XP, that explains the "C" pointing to your boot drive (as it should).
Please try installing EasyBCD on W7 and adding the XP entries from there.
"I'm not sure which statement of mine gave you the idea that I'm booting from "my own boot partition."
"So it's 100% clear, let me explain my setup. C: contains my boot files. There's no Windows installation on that partition."
"Are all those people also losing their C: partition?"
There is no such physical entity as "a C partition". When your PC is powered down, none of the partitions have letters. The only persistent label is the Volume Label which is physically written in the MBR partition table and is accessible to and identical on any OS which sees that partition, W7,XP or Linux. The letters are a MS Windows concept. They only exist in the mind of the running MS OS (it's registry). Linux doesn't use them (because they're not "real")
XP and Vista/7 do seem to have different policies with regard to the use of C. All will default to C when installing an OS from a booted CD/DVD if no other OSs are visible.
XP differs from Vista/7 when installing 2nd and subsequent OSs. It will use the next available letter for itself and respect the previous system(s) allocations. Vista/7 prefer to take C for the running OS regardless of what other systems are doing.
I imagine the change of policy is a response to the problems which the former system can cause.
3rd party apps (mention no names ..... Adobe....) have an annoying habit of putting stuff on C:\Program Files\Common Files even when you've pointed the install at x:\My Progs. If one of your XPs is C, and the others can see it, then cross contamination occurs between the OSs with unpredictable consequences.
Always having the running OS think of itself as C avoids such problems
 
@CG It is when viewed from XP . (see post #14)
(btw What's the difference between "boot device" and "EasyBCD boot device")
 
Last edited:
boot device means it's the actual active partition, EasyBCD boot device means that it's the device EasyBCD will use in place of an inaccessible boot partition (i.e. for the NST folder and the easyldr/neogrub/whatever files)
 
Back
Top