I have a new machine installed with win 7 64 bits with UEFI but when I want to add an old hard drive (MBR) the system wont boot. Is there any solution to this problem without having to format the second disk or reinstall win7 with hotfixes applied?
I had the same problem. After trying many different things; many reinstall and repairs. The only way I was able to boot with a second old hard drive(mbr) was to do a new clean install of windows 7.
But, I would have to install windows on my main hard drive as mbr too. This meant, that there is no way that I can boot my computer with my main hard drive a gpt(uefi) and a second hard drive as mbr.
I tested with several different hard drives. When the main hard drive is gpt(uefi), the only way to boot is when the second hard drive is also gpt(uefi) or the second hard drive is unpartitionned.
It seems Windows 7 uefi is still very buggy when you want to use it with old hard drive.
I had problems booting Windows 8 with another hard drive. Then I found this post: Windows (using UEFI boot on GPT disk) will no longer boot after adding an MBR hard disk ; the solution worked for me. The main problem is that you may have an extended partition on your other hard drive, which does not seem to be a good idea when booting Windows with UEFI.
After making a backup, I erased my extended partition (the mentioned post says that you can also convert your other drive partition table to GPT), then Windows 8 could boot properly.
The trick with the disk signature also worked, but was only enabled me to boot windows once (the trick had to be done for every boot). I think it is still a good idea to try it before playing with the partition table. But you should be extremely cautious when using dd like this.