I inherited a Windows Server 2003 R2 virtual machine that was previously running under a failing Windows Virtual Server 2005. Both the C: and D: VHDs were within a few hundred megs of being full.
I created a new Hyper-V-based VM to port the old one to and edited the VHDs prior to using them by expanding them both by 10Gigs.
The integration services install & HAL upgrade went fine but when I boot the VM, both drives were still showing as almost full still.
A quick look with Disk Management shows that they both have an extra 10Gigs of unallocated space tacked onto them.
I'm thinking an easy fix would be to simply down the Win2k3 R2 VM and attach its VHDs to another Win2k8 R2 VM running on the same Hyper-V server and use its disk management tools to extend the partitions to cover the extra 10Gigs added onto them.
Will Win2k8 R2 try to tack any additional "stuff" (drive signatures or the like) onto the VHDs that would prevent the Win2k3 R2 VM from functioning? I'd hate to purchase a 3rd party partitioning utility if I can do things with stuff already in-house.
Does Microsoft support these dynamic VHD's being "dynamic disks" under HyperV? If so, you could convert them to that and then expand them that way. If not, then I think your idea of using a 2008R2 host to safely expand the basic disk to probably be a good safe way to go about this. You could also boot the server off GPartEd (which is free) and do this, but your mileage may vary with that I've had it complete hose a disk before, and sometimes nuke the MBR.
I don't know that if you attach the VHD to a 2k8 system the NTFS version wouldn't get upgraded. If under 2003 they show as having extra space you should be able to extend the partition into the new free space directly under 2003. You should not need any 3rd party tools to extend the partition.
The simplest way is to use diskpart:
Yes, you can do this. I've done this several times (under VMware vSphere) and have never had any problems. This method should work the same regardless of virtualization platform. I did it just now just to confirm and had no problem whatsoever.
Not being that familiar with Virtual Server or Hyper-V, just make sure that after you extend the volume and remove it from the "placeholder" VM that you remove it only and don't delete it.