Third party DCOM referrals? 
Author Message
 Third party DCOM referrals?

Hi there all.

We are trying to create the mother of all real time distributed processing
systems and are trying to use DCOM to simplify the programming model.  The
idea is to have one NT box running an application that creates remote
objects on it's peers/subordinate processors and then gets them to cooperate
with each other and get out of the way.  In theory we should be able to
create remote object A and B and pass the interface of object A to object B.
Object A should then be able to make calls directly on object B without the
creator knowing or caring about it.  Herein lies the problem.  If machine #1
creates A and B on machine #2, then all is fine.  A and B can communicate
perfectly, even if machine #1 shuts down.  However, if A and B are made on
machines #2 and #3 respectfully then things are not quite so good.  Any call
other than to the IUnknown interface of object B passed to object A fails.
If I pass a reference to IUnknown I can query for the interface I want and
get it.  If I query for one that I know is not supported I fail to get it.
So I am quite sure I have a handle to the right object, but why does it not
work?

Any suggestions at all?

Code is ATL using Visual Suudio 6 on NT (CE 3.0 to follow too, but that is
another can of worms).

By the way. CV's (or is that "resume" over here?) accepted from any decent
COM/DCOM programmers wanting to work in Boston MA area.

Best regards

Bill



Wed, 18 Dec 2002 03:00:00 GMT  
 Third party DCOM referrals?
Greets,

    Are your objects on the other machines using type library marshalling?
If not and you are using custom interfaces for the objects, are the
proxy/stub DLLs registered on all the machines that need to use the
interface?  Also, when interfaces are passed from machine to machine, is the
reference count being incremented appropriately?

Regards,

Joe


Quote:
> Hi there all.

> We are trying to create the mother of all real time distributed processing
> systems and are trying to use DCOM to simplify the programming model.  The
> idea is to have one NT box running an application that creates remote
> objects on it's peers/subordinate processors and then gets them to
cooperate
> with each other and get out of the way.  In theory we should be able to
> create remote object A and B and pass the interface of object A to object
B.
> Object A should then be able to make calls directly on object B without
the
> creator knowing or caring about it.  Herein lies the problem.  If machine
#1
> creates A and B on machine #2, then all is fine.  A and B can communicate
> perfectly, even if machine #1 shuts down.  However, if A and B are made on
> machines #2 and #3 respectfully then things are not quite so good.  Any
call
> other than to the IUnknown interface of object B passed to object A fails.
> If I pass a reference to IUnknown I can query for the interface I want and
> get it.  If I query for one that I know is not supported I fail to get it.
> So I am quite sure I have a handle to the right object, but why does it
not
> work?

> Any suggestions at all?

> Code is ATL using Visual Suudio 6 on NT (CE 3.0 to follow too, but that is
> another can of worms).

> By the way. CV's (or is that "resume" over here?) accepted from any decent
> COM/DCOM programmers wanting to work in Boston MA area.

> Best regards

> Bill



Thu, 19 Dec 2002 03:00:00 GMT  
 
 [ 2 post ] 

 Relevant Pages 

1. Third party component set opinions

2. How to link third party .LIB files

3. How to link third party .LIB files

4. Importing third party interfaces that have the same name into an IDL file

5. First-chance exception in third-party DLL

6. ?Seeking Recommendations re: Third Party Database Engines

7. debugging 'third party' *.exe

8. Looking for third party tool

9. First-chance exception in third-party DLL

10. How do I Link with a third party static C library

11. Importing some functions from a third-party DLL

12. Looking for modest third party libraries for printing and graph

 

 
Powered by phpBB® Forum Software