I came here looking for an answer to the same question. This issue has been bugging me for a couple of months, so I needed to find a solution and I did. Even though this question has been marked as answered, a solution has not been given, so I'm here to fill the gap for all the other people on the hunt for an answer. Basically, it's the same procedure as making any non-bootable HDD bootable. You can use Windows' commandline tools for that. However, I used third party tools:
Mount the VHD in Windows (Control Panel --> Computer Management --> Disk Management --> Action --> Attach VHD)
Use a tool to install a BCD-Bootsector to the drive. I used NeoSmart's EasyBCD: Start the tool and choose BCD Deployment. Under "Create Bootable External Media" choose the drive name of the mounted VHD and click on "Install BCD".
Unmount the VHD by right-clicking on the corresponding "Disk*".
Add the VHD to a virtual machine in VirtualBox.
The VHD is bootable now. Depending on the operating system you're running on you might be set or run into problems. I tested this with Win8 x64. After installing the boot sector, I received a "winload.exe not found" error in VirtualBox. Here's how to fix it:
Mount the VHD in Windows again.
Download Visual BCD. Start it and choose "Store" --> "Open Store" and maneuver to the drive of the mounted VHD.
Select the file "BCD" in the folder "BCD" and click "open". Take note that the file has no file ending.
Click on the boot entry on the left side under "Loaders" and on the right you'll see its content listed.
Double click on "Application Device" and set "Type" and "Drive" to "BootDevice". Do the same for "OSDevice".
Close the store, unmount the VHD and boot it in VirtualBox. It should boot without problems now.
In case you're getting a "wrong signature" error for Windows 8 then you need to update "bootmgr" in the root directory of the boot drive by copying this file from the Windows 8 installation disc. It's also in the root directory there.
I had no problems using the same VHD in VirtualBox and boot to it directly so far. Despite what the criticism here for this technique it is relatively hassle free if you keep some things in mind:
Use a copy of the original VHD if you just need to do a job in the other operating system without the need to keep the changes.
In case you need the changes, create a restore point in case the VirtualBox drivers screw up your system, unlikely as it is...
The VHD has its own BCD store that doesn't interfere with that of your actual computer. So modifying its boot sector for VirtualBox won't have any effect for booting it directly. In the unlikely event of an error you can always re-install the BCD-store and boot sector anyway.
Thanks for the answer:). You mean no problem apart from licensing issues? I'm okay with licensing problems ;) What would happen if I use two different licenses to activate under the two different boot scenarios? – 0fnt – 2010-01-11T17:13:37.470
1I'm sorry if I was unclear. There could potentially be HUGE problems aside from licensing, notably rendering your system unbootable. In any case, you can't use different licenses for the same VHD depending on how you boot--Windows doesn't support that. – CarlF – 2010-01-11T23:34:38.883