I got the message "Windows could not update registry data in the installation." on several attempts to upgrade Vista. Each time, I uninstalled more software (including parts of IIS that caused some other folks trouble).
I also checked my event logs (using eventvwr.exe) and cleaned up problems reported there until no more errors were being logged.
Then I found the file C:\$Windows.~BT\Sources\Rollback\setupact.err had some useful info. An error message there suggested trouble with the HKLM\SYSTEM\MountedDevices key in the registry.
I cleaned out some old entries from there, rebooted, and tried the upgrade again. This time it worked (although it appeared to freeze a couple of times toward the end, requiring a hard reboot -- scary stuff).
If you want to try cleaning up the MountedDevices key, read up on it first to avoid causing more problems, and save the existing data there first. I kept the \DosDevices entries and \??\Volume entries for my floppy and hard drives (A:, C:, F

and removed all the other entries. On reboot, Windows rebuilt the entries for my CD and DVD drives.