It is possible to move a Windows XP machine to VirtualBox, though there are a number of steps.
The imaging tool I use is to simply download one of the Linux Live CD's (like Ubuntu) and use it as the boot CD image in a new VirtualBox vm. Linux has a tool called GParted which is very good at moving partitions from one drive to another.
If you connect the old XP drive using a USB enclosure (or cable) it can be mounted as a hard drive in your virtual machine. GParted will see both the virtual hard drive and the USB mounted hard drive and can then simply copy the entire partition (or partitions) over.
After moving the partitions, you will need to boot the virtual machine using a Windows XP install disk and switch in to recovery mode. The master boot sector needs to be recreated and recovery can do this. Additionally, if you didn't move all partitions from the source machine, make sure the C:\boot.ini refers to the correct partition number for booting Windows.
Once the Windows boot loader kicks in, you may need to switch to safe mode or VGA mode to install new video drivers. VirtualBox has its own driver sets which can be installed after once the virtual machine is running cleanly (see installing client tools).
Windows Genuine Advantage may need to re-certify the XP license since it will detect the hardware change.
Another method which might avoid the need for an XP boot disk is to use the 'dd' command in a Linux shell to make a complete image of the hard drive.
dd if=/dev/source-drive-device of=/dev/destination-drive-device
You can get the device names from GParted - but be really sure you know which device is which or you will wipe out the old hard drive.