Question

I'm relatively new to the Component Object Model specification - I have a simple question:

  • How can I access a COM interface from a C or C++ application

For instance, accessing Microsoft Excel COM interface to perform basic operations, without user intervention.

Kind regards

Was it helpful?

Solution

Actually, you will need to instantiate the object using the COM interface.

This is fairly complicated, more than we can just answer here.

here is a good primer: http://www.codeproject.com/KB/COM/comintro.aspx

Another one: http://www.codeguru.com/cpp/com-tech/activex/tutorials/article.php/c5567

OTHER TIPS

I would suggest looking into ATL if you are using C++, and using C++ if using C. It is very easy to use the #import construct to access COM objects in DLLs or EXEs.

There is a wonderful article at Microsoft that seems to address this exact question. If you want to stick with straight C++ (i.e. MFC/ATL), you should check out the article as it has loads of sample code:

How to automate Excel from C++ without using MFC or #import

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top