I've been asked to do this many times in my computer business.
Using "Partition Magic 8" run from a boot CD, the job is easy.
You first must make some FREE space by shrinking D: by the amount that you want to add to C:.
Then, with some free space established, you merely increase the size of C: to take up that FREE Space. Job done.
In many cases I've found that the C: drive is just jammed up with pure CRAP, like temporary internet files, temp files, prefetch files, and so on.
I use a batch file I wrote called XPCleanup.bat to get rid of the biggest amount of junk and finish off with Windows own "Disk Cleanup" run in Extended Mode, using this shortcut:
%SystemRoot%\System32\Cmd.exe /c Cleanmgr /C: /sageset:35 & Cleanmgr /sagerun:35* you can set it to delete all the junk except the "Setup Log" files.
Then finish the cleanup with a defrag.
All pictures, old docs and other media files should be burned to CD/DVD's and then deleted off of the C: drive.
Since no two PC's are the same, the solution to the "Full Drive" problem has to be addressed one PC at a time. No ONE solution fits all drives.
With just one error on your HD, repartitioning can result in a completely LOST drive.
So, it's imperative that if you're going to re-partition, you absolutely MUST make sure there are NO errors on the drive. Run
CHKDSK /f several times to make sure there are no errors.
Personally, I even like to make a Ghost backup of the C: drive before I start any re-partitioning.
(just, in case)
Also, a power failure during re-partitioning can wreck the HD.
I never re-partition a HD unless the PC is plugged into a UPS.
(battery backup power supply)
Good Luck,
The Shadow