Re: Newbie: Client calling a server but what CLSID
Thanks for your reply Igor
Why
The idl has:
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(B5E4CC5E-A568-4776-BE59-C61ABD07F7D9),
dual,
helpstring("IBeepObj Interface"),
pointer_default(unique)
]
interface IBeepObj : IDispatch
{
[id(1), helpstring("method Beep")] HRESULT Beep([in] long lDuration);
};
[
uuid(C98F127F-2DFD-41D3-98F5-17AE5F4825FB),
version(1.0),
helpstring("BeepServer 1.0 Type Library")
]
library BEEPSERVERLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
[
uuid(E3829EAD-F1BC-4ECF-B14B-687D3EC2A63D),
helpstring("BeepObj Class")
]
coclass BeepObj
{
[default] interface IBeepObj;
};
};
From that I have
B5E4CC5E-A568-4776-BE59-C61ABD07F7D9
C98F127F-2DFD-41D3-98F5-17AE5F4825FB
E3829EAD-F1BC-4ECF-B14B-687D3EC2A63D
3 IDs and I thought you only get 2 (CLSID and IID). Which is which?
Assuming the last ID is the CLSID is it simply:
const CLSID CLSID_BeepObj =
{0xE3829EAD,0xF1BC,0x4ECF,{0x68,0x7D,0x3E,0xC2,0xA6,0x3D}};
Thanks for your help.
"Igor Tandetnik" <itandetnik@mvps.org> wrote in message
news:%23h0bkzDdIHA.3940@TK2MSFTNGP05.phx.gbl...
"Darwin" <darwin@nowhere.com> wrote in message
news:OOgD$SDdIHA.5900@TK2MSFTNGP02.phx.gbl
I am doing a tutorial on COM. I have created a server object
(beepServer) with ATL. I want to call that object from a client. My
question is where do I get the CLSID and the IID from?
Look at the IDL file in your server project, and the .h file generated
from it.
I think that when it compiled on my machine it would have generated a
different CLSID to what the author's had, but the format is completely
different.
It's just a different way to write the same bits.
--
With best wishes,
Igor Tandetnik
With sufficient thrust, pigs fly just fine. However, this is not
necessarily a good idea. It is hard to be sure where they are going to
land, and it could be dangerous sitting under them as they fly
overhead. -- RFC 1925