Let?s assume we have object B and aggregated object C (in-
proc server), created by B. Can you access any interface of
B from C? What?s the difference between aggregated and
contained objects?
Answers were Sorted based on User's Feedback
Answer / mms zubeir
For the first question, Yes, we can since the QueryInterface
() rules of thumb suggest that if we can query an interface
of C from B, we should be able to query the viceversa.
The IUnknown implementation of both the objects has to do
the 'magic'.
For the second question, Aggregation bounds outer and inner
objects together and gives the user the interface pointers
of either objects to access it directly so that the user
never knows the objects are aggregated.
But when containment is used, the interface of inner object
never exposed to the client directly rather the outer
object receives the calls and forwards internally. Here
also, the user doesn't know the objects are contained.
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / chandrasekharreddy siddamreddy
1. Yes, we can access. In aggresstion will use deligation
concept to directly interact with innner components.
2. Explantion given in answer (1). I will give how we are
achieving that
When we create the Outer Componet Instance internally will
create innner componet instance and keep the IUnknown
pointer of Inner component in Outer Component and Outer
componet IUnknown pointer in InnerComponet to deligate the
calls.
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / kirba
Go through the book called "Inside COM+ Base Services"
or "Inside DCOM" by Guy Edon & Henry Edon under topic
IUnknown interface.You could be able to understand the Core
interns of Aggregation & Containment
| Is This Answer Correct ? | 0 Yes | 1 No |
When you call CoInitialize(NULL) function how it works internally.
Write a JCL to copy only selected members from a partitioned data set to another partitioned data set. (Use: IEBCOPY)
What is In-proc?
how you call a dll as a COM dll.
Define and explain about COM?
What happens when client calls CoCreateInstance?
how do you know it is general dll or com dll
Explain JIT activation?
How do we create dcom object in vb6?
What are the different compatibility types when we create a COM component?
What is IUnknown? What methods are provided by IUnknown?
Can you explain what is dcom?