> The clsid part was no problem; CLSIDFromProg() gave me that.
> CCI /also/ needs an IID of the interface to retrieve, so that is where
> _uuidof(xxx) came in - I just got confused about what should have got
> in it, since it really isn't clear from the .tlh file (unless you know
> what you're looking at).

The parameter to _com_ptr_t::CreateInstance( ) is a CLSID, not an IID.
_com_ptr_t already has the IID when you declare it.  It's a template
parameter for this class.

I think if you has implemented the server in ATL, all this was far less
confusing that it is currently.

> > Something else: in your COM server, you may have either
> created a dual
> > interface, or a pure IDispatch interface.  A dual interface is an
> > interface
>
> > A pure IDispatch interface is defined like this in the IDL:
> >
> >  [ ... ] dispinterface IFoo {};
>
> It was a pure IDispatch interface.

That's no good really.  You're much better off with a dual interface.  I
don't remember how hard is making a dual interface in MFC, but in ATL you
almost get it for free.  That's another reason why to use ATL.

-------------
Ehsan Akhgari

Farda Technology (www.farda-tech.com)

List Owner: [EMAIL PROTECTED]

[ Email: [EMAIL PROTECTED] ]
[ WWW: http://www.beginthread.com/Ehsan ]

'I generally take life as it comes my way', said Death.





Reply via email to