Well I'm not sure .. I put in a different Hard Drive, installed Vista, updated all drivers to the same I was using on my old drive, installed all the same aplications etc so it was all setup to the same as my old drive, and Halo 2 works fine.
Went back to my old drive, removed all the apps / drivers etc and re-installed fresh drivers etc, Halo 2 still not working.
So all the drivers / apps were the exact same versions on both my drives .. Just one works and the other didnt .. I have no idea why ..
The only difference between the two Vista installs, is my old one is 'Activated' and the new one is not. However I doubt 100% thats the reason why .. lol