Hi there
This works a treat
1) download the live distro of your choice --the ISO to a USB stick - I use SUSE 11.4
2) download vmware player for linux / vmware server (both free) / vmware workstation (commercial) or Virtual box for linux (free)
3) create the linux bootable system on your USB as per (in my case for SUSE) but other Linux distros should be the same - I'm using the KDE version of SUSE - (Windows like) --you could use GNOME or any other distro.
(download here)
software.opensuse.org: Download openSUSE 11.4
(instructions here)
To create the live USB
http://en.opensuse.org/SDB:Live_USB_stick
4) Boot your linux system from the USB stick
5) install your vmware / virtual box vm software package
6) install your guest OS in a data area on the USB stick
7) power on your guest OS - Voila easily done - you've now got a nice portable Windows VM running from a Bootable USB
Windows itself isn't bootable from a USB although you could fiddle around with a sort of WINPE type installation if you want to have a Windows HOST type system.
It's MUCH EASIER to use a linux system as the HOST on a USB --these all boot with no prob from a USB stick and if you use something like the live CD I've suggested when it starts the menu is so similar to Windows you won't get lost. All you need to do is install the vmware or vbox package and your guest Windows Virtual Machine.
Tip: as the Windows VM is identical whether its run on Linux or Windows you could create your VM on Windows if you think its easier - simply then "clone" the vm to the usb stick -- note you'll need to write to the linux file system from winbdows but there are loads of programs that can do that.
You'll probably have fun doing it too -- start with an XP VM as its much smaller and easier to test.
While the suggestion here is different to using Portable VBOX I think it's far more robust, works 100% and isn't much harder to implement. This way also its easier to add more VM's as and when you need them whether Windows or Linux type VM's.
For the windows vm to access files on the main computer - ensure the windows directories are mounted when the Linux system is booted from the usb.
You can then either use SAMBA or simple normal "Mount Network drive" from either the main computer or the virtual Windows machine to access "Shares". Enable NAT networking in the vm of course.
You'll now have READ / WRITE access to all the drives on your main computer too from the VM.
Cheers
jimbo