COM Components and Side-By-Side Execution
Multiple versions of a managed application that run side-by-side on a computer can interoperate with COM components. Neither the managed application nor the COM component requires any modification for side-by-side execution to work properly. This topic introduces COM issues that are related to side-by-side execution.
COM Side-By-Side Assemblies
Side-by-side assemblies are unmanaged assembly versions running on the same computer. To use COM side-by-side assemblies, a .NET-based application developer must provide an Win32-style application manifest, which contains binding and activation information. To learn more about COM side-by-side assemblies, search for "Side-By-Side Assemblies" in the MSDN Library.
Primary Interop Assemblies
The Type Library Importer (Tlbimp.exe) imports type library information as metadata in assemblies to expose a COM component to managed applications. When you have multiple versions of a COM component, you can have multiple type libraries, and possibly multiple versions of a primary interop assembly. In this situation, you have two choices:
You can register the newer primary interop assembly, overwriting the older version in the registry.
You can register a single primary interop assembly that supports multiple type libraries.
For instructions on specifying multiple type library versions in a single primary interop assembly, see Generating Primary Interop Assemblies.
See Also
Concepts
Runtime Initialization from a COM Application
Version-Dependent Registry Keys
Configuring a COM Application for Side-By-Side Execution
Applying Version-Dependent Attributes