Exposing COM Components to the .NET Framework
This section summarizes the process needed to expose an existing COM component to managed code. For details about writing COM servers that tightly integrate with the .NET Framework, see Design Considerations for Interoperation.
Existing COM components are valuable resources in managed code as middle-tier business applications or as isolated functionality. An ideal component has a primary interop assembly and conforms tightly to the programming standards imposed by COM.
To expose COM components to the .NET Framework
The common language runtime requires metadata for all types, including COM types. There are several ways to obtain an assembly containing COM types imported as metadata.
You can inspect COM types, activate instances, and invoke methods on the COM object the same way you do for any managed type.
The .NET Framework SDK provides compilers for several languages compliant with the Common Language Specification (CLS), including Visual Basic .NET, C#, and the Managed Extensions for C++.
Interop applications are best deployed as strong-named, signed assemblies in the global assembly cache.