COM or OLE

If I have a need something like as follow.

I want to use the spell check feature of Acrobat in another standalone application.

For this I started with looking into COM. It seems that COM is a specification for dividing monolithic application into components. So that these component can be used in some other application which is too based on COM. But it seems much like what we can do with DLL? So what further COM can Provide?

Also since my process can not use the address space of another process(Acrobat) then how can I use its features? Is there any possibility?

While studying further I founded that using OLE I can use Microsoft Word spell checking APIs in some another application? I want to do the same for Acrobat?

Any peace of advice or suggestion will be very helpful.

Thank a lot!
COM is an object interface technology. The object can be in-processes (a DLL), out of process (a seperate process on the same computer) or remote (a seperate process on a different computer connected over a network).

OLE2 (Object Linking and Embedding V2) uses COM as the underlying method of connecting objects, with some bells and whistles on top.

You shouldn't think in terms of data and address spaces and such, you should be thinking about object interfaces and methods. In the end, you just call methods. You wouldn't expect to directly access data using a COM interface. Data is passed as arguments to methods.
I've never worked with Acrobat, but assumming it exposes a COM interface, obtaining a pointer to any of its interfaces is no different conceptually than obtaining a pointer to interfaces on an in process server. One would accomplish either with a CoCreateInstance() call, only difference being one of the parameters to the call would specify an out of process server, if indeed, that is what Acrobat exposes. In terms of how this is accomplished, the concept of 'marshalling' is the answer. COM takes care of this transparently.
I think Acrobat Spell Checker has an ActiveX interface, but I have no idea how to use it.
Topic archived. No new replies allowed.