Visual Studio 2010: Troubleshooting errors when Embedding Type Information

Visual Studio 2010 has a new feature, Embed Interop Types, that can simplify app deployment and solve those pesky issues that can arise when using COM Interop and Primary Interop Assemblies (PIAs). If you've ever had to ship multiple versions of an app that automates Microsoft Office where the only difference between your published versions […]

Visual Studio 2010 has a new feature, Embed Interop Types, that can simplify app deployment and solve those pesky issues that can arise when using COM Interop and Primary Interop Assemblies (PIAs). If you've ever had to ship multiple versions of an app that automates Microsoft Office where the only difference between your published versions is the version of PIA (to match different Office versions), then this feature is for you.

You enable type embedding when you reference an assembly. In VS, you set Embed Interop Types property to true (default). Command-line compiler equivalent is the new /link compiler option. You can read all about the feature here: /link compiler option (C#), /link compiler option (VB). There're couple of walkthrough available:

More Info: Troubleshooting Errors When Embedding Type Information (Doug Rothaus)