checking errors in your code...
On Sep 21, 9:25 pm, "Alexander Nickolov" <agnicko...@mvps.org> wrote:
Make sure the CLSID in your code matches the CLSID in
your registration script.
--
=====================================
Alexander Nickolov
Microsoft MVP [VC], MCSD
email: agnicko...@mvps.org
MVP VC FAQ:http://vcfaq.mvps.org
=====================================
"Lamefif" <Leonardo.Pje...@googlemail.com> wrote in message
news:1190404670.848755.259250@g4g2000hsf.googlegroups.com...
hi, im reading this book on com and need some help with the examples.
i have compiled the server, and to register it i have
written a .reg file as instructed.
-----.reg file--
REGEDIT
HKEY_CLASSES_ROOT\CarInProcServer.CoCar\CLSID = {6F0BA608-CDA6-44ba-
AC80-F2B31B8A496C}
HKEY_CLASSES_ROOT\CLSID\{6F0BA608-CDA6-44ba-AC80-F2B31B8A496C} =
CarInProcServer.CoCar
\InprocServer32 = C:\Documents and Settings\Leonardo\My Documents
\Visual Studio 2005\Projects\CarInProcServer\Debug\CarInProcServer.dll
------
when run the file above works, it adds to registry the server.
hr = CoGetClassObject(CLSID_CoCar, CLSCTX_INPROC_SERVER,
NULL, IID_IClassFactory, (void**)&pCF);
here however CovetClassObject returns a "Class not registered" and i
get access violation at run time.
--client---
int main()
{
CoInitialize(NULL);
HRESULT hr = NULL;
IClassFactory* pCF = NULL;
ICreateCar* pICreateCar = NULL;
IStats* pStats = NULL;
IEngine* pEngine = NULL;
// Get the class factory pointer of CoCar.
hr = CoGetClassObject(CLSID_CoCar, CLSCTX_INPROC_SERVER,
NULL, IID_IClassFactory, (void**)&pCF);
// Make a CoCar & get ICreateCar.
hr = pCF->CreateInstance(NULL, IID_ICreateCar,
(void**)&pICreateCar);
........
thanks
i have double checked that and i think im using the right one:
// {CB430D57-73BA-46d8-B749-8317D93CEA23}
DEFINE_GUID(IID_IEngine,
0xcb430d57, 0x73ba, 0x46d8, 0xb7, 0x49, 0x83, 0x17, 0xd9, 0x3c, 0xea,
0x23);
// {C0DE508D-CE8F-4991-967F-B3E396C11E07}
DEFINE_GUID(IID_IStats,
0xc0de508d, 0xce8f, 0x4991, 0x96, 0x7f, 0xb3, 0xe3, 0x96, 0xc1, 0x1e,
0x7);
// {E0173D16-2397-43f9-9E25-301F7C0B93F6}
DEFINE_GUID(IID_ICreateCar,
0xe0173d16, 0x2397, 0x43f9, 0x9e, 0x25, 0x30, 0x1f, 0x7c, 0xb, 0x93,
0xf6);
// {6F0BA608-CDA6-44ba-AC80-F2B31B8A496C}
DEFINE_GUID(CLSID_CoCar,
0x6f0ba608, 0xcda6, 0x44ba, 0xac, 0x80, 0xf2, 0xb3, 0x1b, 0x8a, 0x49,
0x6c);
im using the last one CLSID_CoCar..
i cant see where im going wrong :(
thanks