I use EasyBCD (because i have trouble installing GRUB on a EFI motherboard with fakeraid). There is a free version for noncommercial use at the bottom of the page.
As far as I remember, i set up the windows boot loader to chainload grub. There is a automatic method in EasyBCD, but it didn't work for me.
Instead I made it boot into a legacy GRUB with the following menu.lst:
# NeoSmart NeoGrub Bootloader Configuration File
# This is the NeoGrub configuration file, and should be located at C:\NST\menu.lst
# Please see the EasyBCD Documentation for information on how to create/modify entries:
# Boot automatically after 0 secs.
# By default, boot the first entry.
kernel /vmlinuz root=UUID=5827fd40-9b04-4f8a-bb0f-df1612670d89 ro
(hd0,4) means that my root partition is on /dev/sda5.
UUID=X is the uuid of this volume. You can find this with