O modo ( Legacy BIOS ou UEFI ) é determinado pelo gerenciador de inicialização instalado nas configurações da USB e do BIOS.
O meio de instalação do Windows 7 deve suportar ambos ( Legacy BIOS e UEFI ). Para o último, depende das suas configurações. Mas como você pode inicializar a partir de seu UEFI-HDD e de suas inicializações do Win7-USB-Stick no modo Legacy BIOS , ele deve ser definido como "ambos", o que significa que seu BIOS suporta UEFI e como um substituto pode inicializar em Legacy BIOS modo.
Para resolver o problema, aconselho que você instale usando um Win7-Image com suporte a UEFI (nem sei se há um sem) e também deve configurar seu BIOS para o modo UEFI explicitamente ( nenhum modo combinado).
Mas se isso não funcionar e para responder à sua pergunta: Isso deve funcionar:
Posicione o Win7-Image no seu HDD ou USB-Drive e escolha os módulos corretos (siga os comentários):
menuentry "Windows 7" --class windows --class os {
# Insert modules needed in order to access the iso-file
# choose the right module for the partition-table-scheme the image lies on
insmod part_gpt
insmod part_msdos
# choose the right module for the filesystem the image lies on
insmod ntfs
insmod fat
insmod ext2
# Insert module needed in order to find partition
insmod search_fs_uuid
# Set UUID of partition with the iso-image
# and let grub2 find the partition
# (save it's identifier to the variable $root)
set uuid="XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX"
search --no-floppy --set=root --fs-uuid $uuid
# Mount the iso image by addressing it with (partition)/path
set iso=/images/Win7_English_x64.iso
loopback loop ($root)$iso
# boot (chain-load) the windows7-image using the bootmgfw.efi file located
# on the Win7-ISO-Image
chainloader (loop)/efi/microsoft/boot/bootmgfw.efi
}
Se você quiser despejar a imagem diretamente no usb-stick, deve deixar de fora as set iso= - e loopback loop ($root)$iso -parts necessárias para montar o iso. Seu chainloader é então chainloader ($root)/efi/microsoft/boot/bootmgfw.efi