I think I've found the solution to this, after a lot of digging around.
With this problem, as well as the ASP.NET web site error, you also get:
-
a problem opening the form designer in a Windows Forms application ("The service Microsoft.VisualStudio.Shell.Interop.ISelectionContainer already exists in the service container. Parameter name: serviceType.")
-
an error when you try to compile a console application ("Required file 'alink.dll with IAlink3' could not be found").
There are probably other situations which produce errors as well, but I was so disheartened I didn't test any more!
[Incidentally, it would help a great deal if you could copy the text of an error message out of the dialog box when an error occurs. Microsoft used to allow you to do this, as I recall with SQL 2005 errors, but these errors don't allow it and it's a pain copying them down due to their length.]
However, it seems that the installation disc for VS2008 Pro contains a couple of patches which should normally be installed during the installation of VS2008, but for some reason as yet undetermined, were not in my case (although I have seen mention that it's something to do with Office 2007, but I can't confirm that). Remember, I had the identical situation on both my desktop and my laptop.
These patches are in the folder [drive]:\WCU\dotNetFramework\dotNetMSP\[x64 | x86] and should be installed in this order:
-
NetFX2.0-KB110806-v6000-x[64 | 86].msu
-
NetFX3.0-KB929300-v6000-x[64 | 86].msu
There are also a couple of other patches in this folder, NetFX2.0-KB936704-v6000-x[64 | 86]_RTM-en.msu and NetFX2.0-KB936705-v6000-x[64 | 86]_RTM-en.msu, but these both fail if you try to install them. I suspect that these may be called during the VS2008 installation to bootstrap the installation of the patches above. Note that if you search for these Knowledge Base articles on the Microsoft site, the articles either do not exist, or they make no mention of any of these problems.
I hope this helps other people to get round this problem, which has consumed far too much of my time. Microsoft plase take note - this is affecting tons of people and cannot be swept under the carpet because you can't reproduce it on a clean install of Vista. If you want to encourage developers to use VS2008 on Vista, make sure it installs correctly on real-world boxes.
I'm now up and running and can get down to work - just in time for the weekend
Graham