How to invoke .net components from com components,give the
sequence ?

Answer Posted / shyam

When a COM client calls a .NET object, the common language
runtime creates the managed object and a COM callable
wrapper (CCW) for the object. Unable to reference a .NET
object directly, COM clients use the CCW as a proxy for the
managed object.

The runtime creates exactly one CCW for a managed object,
regardless of the number of COM clients requesting its
services. As the following illustration shows, multiple COM
clients can hold a reference to the CCW that exposes the
INew interface. The CCW, in turn, holds a single reference
to the managed object that implements the interface and is
garbage collected. Both COM and .NET clients can make
requests on the same managed object simultaneously.

COM callable wrappers are invisible to other classes
running within the .NET Framework. Their primary purpose is
to marshal calls between managed and unmanaged code;
however, CCWs also manage the object identity and object
lifetime of the managed objects they wrap.

Object Identity

The runtime allocates memory for the .NET object from its
garbage-collected heap, which enables the runtime to move
the object around in memory as necessary. In contrast, the
runtime allocates memory for the CCW from a noncollected
heap, making it possible for COM clients to reference the
wrapper directly.

Object Lifetime

Unlike the .NET client it wraps, the CCW is reference-
counted in traditional COM fashion. When the reference
count on the CCW reaches zero, the wrapper releases its
reference on the managed object. A managed object with no
remaining references is collected during the next garbage-
collection cycle.

Is This Answer Correct ?    1 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is the difference between com architecture and .net architecture?

465


Explain how to make a net component talk to a com component?

3184


What is jit activation?

506


Can .NET Framework components use the features of Component Services?

490


Is the com architecture same as .net architecture?

3111






What are Interop Services?

546


Explain how does you handle this com components developed in other programming languages in .net?

436


Explain how to register com+ services?

3292


What is integrity?

511


Explain the new three features of com+ services, which are not there in com (mts)?

3350


Define object pooling?

3251


How to make a net component talk to a com component?

454


what is the relational database of tables and forms

1949


What is manageability?

555


What is ccw?

3190