I was unable to install Vista Service Pack 2 but after a number of tries finally found what the problem was.
Setup went through all the steps but while in Step 3 it started rolling back the installation. Once back in SP1 Vista an alert with the message "Installation was not successful" and the error code 8004402f was shown.
After trying a lot of suggestions it turns out that the problem cause was a change I had made to the Environent Variables. I had put the temp folders on a drive which was not available directly at Windows start. Changing them back to a path on C: did the trick and I'm now running SP2.