I was testing out EasyBCD's new Windows XP feature. I used EasyBCD to edit the BCD on my Vista 64 partition and added two entries for the Windows XP partition on the same drive and another XP partition on another drive. I also added a third entry using the automatic mode. This properly created the following files on the Vista 64 partition:
\NST\ntldr - NTLDR for both Windows XP partitions. Uses Boot.ini.
\NST\easyldr1 - NTLDR for 1st Windows XP partition. Uses ebcd.001.
\NST\easyldr2 - NTLDR for 2nd Windows XP partition. Uses ebcd.001.
\Boot.ini - Boot.ini for both Windows XP partitions.
\ebcd.001 - Boot.ini for first Windows XP partition.
\ebcd.002 - Boot.ini for second Windows XP partition.
All three options booted as expected when I boot my Vista 64 partition. So far so good. I like this new feature.
Next, I booted into my Windows XP partition and edited the BCD on that partition and added the same 3 entries. This properly creates the following files on my Windows XP partition:
\NST\ntldr
\NST\easyldr1
\NST\easyldr2
However, the three other files
\Boot.ini
\ebcd.001
\ebcd.002
were added to my Vista 32 partition.
When I boot my Windows XP partition, using these 3 options in the boot menu fails because the files are not in the root directory of the Windows XP partition. Actually the 1st option works but it's using the Boot.ini file that already exists on the Windows XP partition instead of the one that EasyBCD put on my Vista 32 partition. I originally wanted to test if my existing Boot.ini file would get overwritten - not expecting for a new Boot.ini to be created on a different partition.
I believe this problem is related to the SystemPartition issue discussed at EasyBCD 2.0 b97 overwrites all MBRs even on disks with no MBR - Page 2 - The NeoSmart Forums which I haven't been able to remedy yet so I thought I would bring it up again in a separate thread in this new context.
EasyBCD is using the SystemPartition value as the location of the Boot.ini files even though the NTLDR code obviously does not use that to load the Boot.ini file. EasyBCD does not use the SystemPartition value as the location of the ANG# and NeoGrub files used by the other \NST files so I don't see a reason to use the SystemPartition value for NTLDR. It seems that SystemPartition is not used for any part of the boot process - because my Windows XP partition boots fine when all the files are on the Windows XP partition. In fact, when I use the Windows XP partition in Parallels Desktop (virtualization), SystemPartition is pointing at a zeroed out partition which causes EasyBCD to give an error "Valid NT Install Not Found!" (all mounted drives or selected drive) when I try to add a Windows XP entry.
In the thread I linked, Computer Guru said that "BootCamp isn't reporting the correct boot drive info to Windows". I don't see how this could be true if all my other Windows partitions (Vista 32, Vista 64, 2nd Windows XP) do not have this problem. Or if it is true, it doesn't affect booting.
\NST\ntldr - NTLDR for both Windows XP partitions. Uses Boot.ini.
\NST\easyldr1 - NTLDR for 1st Windows XP partition. Uses ebcd.001.
\NST\easyldr2 - NTLDR for 2nd Windows XP partition. Uses ebcd.001.
\Boot.ini - Boot.ini for both Windows XP partitions.
\ebcd.001 - Boot.ini for first Windows XP partition.
\ebcd.002 - Boot.ini for second Windows XP partition.
All three options booted as expected when I boot my Vista 64 partition. So far so good. I like this new feature.
Next, I booted into my Windows XP partition and edited the BCD on that partition and added the same 3 entries. This properly creates the following files on my Windows XP partition:
\NST\ntldr
\NST\easyldr1
\NST\easyldr2
However, the three other files
\Boot.ini
\ebcd.001
\ebcd.002
were added to my Vista 32 partition.
When I boot my Windows XP partition, using these 3 options in the boot menu fails because the files are not in the root directory of the Windows XP partition. Actually the 1st option works but it's using the Boot.ini file that already exists on the Windows XP partition instead of the one that EasyBCD put on my Vista 32 partition. I originally wanted to test if my existing Boot.ini file would get overwritten - not expecting for a new Boot.ini to be created on a different partition.
I believe this problem is related to the SystemPartition issue discussed at EasyBCD 2.0 b97 overwrites all MBRs even on disks with no MBR - Page 2 - The NeoSmart Forums which I haven't been able to remedy yet so I thought I would bring it up again in a separate thread in this new context.
EasyBCD is using the SystemPartition value as the location of the Boot.ini files even though the NTLDR code obviously does not use that to load the Boot.ini file. EasyBCD does not use the SystemPartition value as the location of the ANG# and NeoGrub files used by the other \NST files so I don't see a reason to use the SystemPartition value for NTLDR. It seems that SystemPartition is not used for any part of the boot process - because my Windows XP partition boots fine when all the files are on the Windows XP partition. In fact, when I use the Windows XP partition in Parallels Desktop (virtualization), SystemPartition is pointing at a zeroed out partition which causes EasyBCD to give an error "Valid NT Install Not Found!" (all mounted drives or selected drive) when I try to add a Windows XP entry.
In the thread I linked, Computer Guru said that "BootCamp isn't reporting the correct boot drive info to Windows". I don't see how this could be true if all my other Windows partitions (Vista 32, Vista 64, 2nd Windows XP) do not have this problem. Or if it is true, it doesn't affect booting.