yup as Moab mentioned, you can run chkdsk by booting from the Vista disk. as it looks very likely your drive is failing, the best way now is to do a clone of your hard drive. use Clonezilla to take the image because it has options to skip bad sectors. (I believe most free cloning software will fail when they encounter the bad sectors) although the image will still contain description that there are bad sectors.
after you get your replacement hard drive, you can restore this image. but since the image contains information of the bad sectors, you need to 're-educate' the drive that the bad sectors are not there since this is a new drive. boot into the Vista disk and run chkdsk with the /B switch. /B implies: Re-evaluates bad clusters on the volume. but take note since the clone skipped pass those bad sectors, you might have some data which are corrupted. it is at least better than losing all your data. you should also do a repair installation to repair those system files in case those got corrupted.