Lars and I did some porting of a VS 2005 vsPackage to VS 2008. And we were quite shocked by this:

Loads of Errors

Fortunatelly those 30 something compile errors are “just” caused by a couple of duplicated namespaces and classes existing both in Microsoft.VisualStudio.Shell.9.0.dll and Microsoft.VisualStudio.Shell.dll, like Microsoft.VisualStudio.Shell.RegistrationAttribute or ServiceProvider. One solution would be to remove the reference to Microsoft.VisualStudio.Shell.dll and just use the new version. Unfortunatelly we still needed the reference for some obscure reasons. But introducing an alias for the old library helped – and made all the errors go away. Fortunatelly. ;)

Introducing an Alias for a DLL

So, go to the References section in your project, click on Microsoft.VisualStudio.Shell and change the Property “Aliases” from “global” to something like “oldShell”. It worked for us, I hope it works for you – and allows you to port your vsPackage as well. Good luck. :)