Hello,
I found myself in the same situation -- I needed a WinXP vm but made the vdi too small. I just had success using Clonezilla to clone and proportion the small partition to a new vdi that I made with plenty of room.
Notes from my procedure:
- Created new virtualbox harddisk (dynamic) with plenty of room.
- Added the new hd to the windows vm, along with the iso for clonezilla. Made new hd primary master, old (small) hd secondary master.
- Booted into Clonezilla
- Selected copy local partition to local partition.
- Selected 'fix errors with fsck', make new partition table proportional.
- Selected write new partition - 'works for mbr...'
- After this was complete, removed old hd from virtual machine.
- WinXP booted fine and showed the entire hd-size as disk space.
Thanks for all your notes. Hope this helps.