Migrating to .NET: A Pragmatic Path to Visual Basic .NET, Visual C++ .NET, and ASP.NET By Dhananjay Katre, Prashant Halari, Narayana Rao Surapaneni, Manu Gupta, Meghana Deshpande
Table of Contents
Chapter 9. Migrating to Visual C++ .NET
One might be tempted to use the traditional COM even after the release of Microsoft .NET Framework and the CLR to preserve the investment already made in developing the COM component. Thus it becomes important to know how to write .NET components that can be used by unmanaged clients as well as how to use COM components in a .NET application. The interoperability feature of .NET allows one to use traditional COM components in the new .NET environment.
The .NET components differ from the COM components as follows :
A COM object's client must manage the object's lifetime, whereas the CLR itself manages the lifetime of the objects in its environment.
A COM object's client obtains information about the component by requesting an interface (IDispatch). In the case of a .NET component, however, the client obtains this information by using reflection.
.NET components reside in the memory managed by the .NET Framework execution engine.