This week, I encountered the following strange problem for which I haven't found a final solution so far, though I have found some bandaids. But having a complete solution -or at least a reason why this problem occurs- would be great:
I have a working installation of Windows 7 Professional x64 in UEFI mode. The main disk, SSD #1, contains the following partitions (using GPT): ESP, MSR, system, data. An additional disk, HD #2, with a single data partition (using MBR) is also attached to the system. With this setup, everything works fine.
Now, after adding another disk, HD #3, to the system -my old system disk (bootable, using MBR, one active primary partition and an extend partition with three logical disks)- Windows will no longer boots completely: The boot process begins, the Windows logo is shown. Then, a message is shown in text mode "Windows is loading files" with a loading bar. After a while the boot process stops and I am dropped into the EFI shell. After removing the offending HD #3, Windows boots normally again.
I tried removing HD #2 and only attaching HD #3 together with SSD #1, but this yielded the same problem. Using SSD #1 by itself works fine though. Booting from a Linux live-cd works without problems. All disks and partitions are found and can be mounted. There, I erased the disk signature from the offending HD #3 and now Windows was able to boot and also found all disks and partitions correctly. But after a reboot the same problem reappeared.
My current assumption is that after removing the disk signature, Windows no longer regards HD #3 during the boot process and only setups the disk after booting has finished. But as soon as it has a disk signature again, Windows includes HD #3 in the boot process and probably the partition ordering gets mixed up compared to what Windows expects.
So my question is, why does this boot problem occur and how can I fix it permanently (and will it happen for any new disk I attach to my system)?