Tough dual boot problem after replacing one of 2 HDs, both Win 7

CBelanger

Member
Hello:


Got a tough one for you!


I have a dual boot system, in which uses two HDs, each partitioned into two sections, one for the OS and one for data/programs. I have found that to be the easiest to maintain.


One HD is for Win7-32 (H:, I:smile: and one for win7-64 bit (C:, D:smile:. I have EasyBCD on each system (2.2 on the 64 bit)


While backing up, my Win7-64 bit HD/system failed. I had a image backup of the C: drive and it was the image backup of the D: partition that was failing. I found that the file backup in Windows 7 itself was able to backup all the files just fine.


Got a new HD, same size. Formated and partitioned, then restored the C: Win7-64 bit OS, no problem. One hickup on the D: drive restore, then it, too, restored fine.


But, in spite of having a working Dual boot system prior to getting the new HD, that no longer worked.


I used EasyBCD to reconstruct the BCD. I tried the BCD Management options: Reset; Recreate. Did not help.


Here's what happens:


1. With both drives active, I boot and have the option to use 64 bit or 32 bit Windows. If I select 64 bit, windows loads properly. If I select windows 32 bit, windows starts to load then there is a pause and then the computer reboots to the bios startup screen. It appears to not properly see the H: drive.


2. I have tried Startup/Repair with the install discs for both win32 and 64. It cycles through usually about 2 x, then again it does not work to boot into H:/win 32.


3. If I disconnect the C:/win 64 bit drive. It boots fine into win32.


4. While at the Command prompt after startup repair with the install disc, I tried bcdboot, no change. I tried Bootrec /scanos and /rebuildbcd; ScanOS said I have 0 installations of windows. (In fact I have 2)


5. BTW, when using the OS install disc, it shows the two Windows installations, one on C: with the correct drive size and one on D:, but the size is 999999 (all 9s), not the correct disc size.


6. again, while at the command prompt, of the repair/install disc, it looks like C: = C:, but D: = H:, E:= D:, F: = I:


7. There is no way I can boot into the Win7, 32 bit system with both physical drives connected and thus I am not able to access the BCD for both when using the 32 bit system.


So, it looks like the startup process is really being confused by the bios/or ? setting the drive designators different from the post startup assignment. BTW, the primary HD set in the bios is the C: drive (64 bit windows)


As of right now I can successfully boot into Win7, 64, but I have to disconnect the drive that has the 64 bit os, so I can access Win32.


How in the heck can I untangle this? Selective deletion of the BCD? or what?


Thank you for any suggestions!


Chuck Belanger






There are a total of 2 entries listed in the bootloader.


Default: Microsoft Windows 7 64 bit
Timeout: 10 seconds
EasyBCD Boot Device: C:\


Entry #1
Name: Microsoft Windows 7 64 bit
BCD ID: {current}
Drive: C:\
Bootloader Path: \Windows\system32\winload.exe


Entry #2
Name: Microsoft Windows 7 Ultimate 32 bit
BCD ID: {f1182e22-4e62-11e2-a2de-d43d7e2b8433}
Drive: H:\
Bootloader Path: \Windows\system32\winload.exe
 
Thanks, Terry:
But, still not clear if what you suggest will help.
Since the HD that is accessible (win7, 64, C:/D: drives, where C: is the active partition with the OS) is fine, I would assume that I would fix the Registry Mounted devices area for the (H: drive) drive. The problem is that on boot and after windows is loaded, after I disconnect the C:/D: partitioned Win7, 64 HD, the drive is properly recognized as H:/I:.

It is only during the actual boot sequence, before windows that I noticed that while in Install/Startup repair that the drives are mismatched and am assuming that this is causing the problem with not being able to dual boot to the H: partition. As I mentioned above, the H: drive (Win7, 32) becomes the D: drive, which is the second partition of the Win7, 64 bit drive that I use when both physical drives are connected.

How do I change that initial drive letter assignment? (Or, is this even relevant to my problem of booting into the H:/win 7, 32 drive?)

In the Regedit, once I load windows there is a list of the DosDevice\X: drives, but no corresponding method of knowing which physical partition that drive letter is associated with. The binary data does not help.

Thus I was asking, is this a case of deleting, on the H: drive I assume, some bootmgr or other file/folder.

Right now I cannot access the H: drive (win7,32) and still have the C: drive (win7, 64) connected to do any BCD changes using EasyBCD.

Thanks,

Chuck
 
If you haven't manually assigned letters to particular drives/devices, Windows (even now) will still dynamically assign them as it boots, in much the same way as it did back in the days of W95. The letters it will assign depend on the order of detection of the PnP devices, so if you disconnect a HDD, or plug it on a different channel to its original position, the detection order will change and the letter assigned will follow suit.
If the drive is an OS, that causes the problem that it now thinks of itself as a different letter than the one which describes where all the drivers are located, hence the schizophrenia.
That's what you can correct at that stage with regedit.
Once you've manually corrected it, it becomes permanently assigned rather than dynamically, so moving the device shouldn't cause subsequent problems.
This link describes the problem in more detail, though its solutions apply to XP which isn't as friendly as Vista/7, in that it doesn't allow you to run regedit that early, so ignore all that stuff.
 
Thanks, Terry:

I believe I understand why the problem exists, but I still have no idea how to correct it. Thank you for the links that do explain it further.

"This link describes the problem in more detail, though its solutions apply to XP which isn't as friendly as Vista/7, in that it doesn't allow you to run regedit that early, so ignore all that stuff."

I went to the link and tried to change the D: to H: drive in the registry and that completely messed up my Win7-32 bit installation: in the Setup/Repair mode, two Windows installations were noted, but both on C:; When loading the Win7-32 OS with Win7-64 bit HD disconnected, I got into Win7-32 but it displayed: "Windows 7; Build 7601; This copy of windows is not genuine" on a blue screen not the black screen that is more common. And in this mode, I could not access anything--no desktop, no start menu, no windows popup, no right click, nothing but the blue screen and a mouse cursor. I was able to copy the Registry backup (windows\system32\config\regback: system, software, security, sam, default) files back from while in the win7-64 bit windows and thus restored my access to Win7-32.

That sentence I quoted above needs some expansion if you could, please. After trashing my Win7-32 system, I am aware that I am messing around without really knowing what I am doing. I still do not know how to correctly ID the partitions that I think of as C: D: H: I: and thus properly change the registry drive assignments. The explanation of how the hex code is created based on the partition ID and other variables, then laid out in reverse order simply left me cold!

BTW, just re-tried that link and it is now broken. It was working earlier this evening. I looked at the SavePartition stuff, but the translated French was obscure enough about how to use it, that I really did not feel comfortable about trying it.

Thank you for your continued help,

Chuck


 
In your OP you said you can boot x86 as long as you disconnect x64 first.
Try doing that, then in Disk management, change the letters manually for each partition to what they originally were. (something different then back again if necessary) so that the registration becomes fixed rather than dynamic.
Then reconnect the x64 HDD and try again.

Addendum

No forget that. It won't let you change the "system" or "boot" partitions.

In that link ignore method 3
It's XP only.

Method 2 isn't available because you already have the clone, so you can't prepare before you make it.

Method 1 (regedit) is your only choice.
You just have to correct the wrong assignment.

At least if you get it wrong you can restore it again and have another try.
 
Last edited:
Back
Top