ATL

Started by
1 comment, last by WizHarDx 19 years, 3 months ago
Hi im relatively new to COM+, ATL, ActiveX whatever all the buzz words are :) Anyway Ive created a in process dll in visual C++ 6.0 using ATL. I can integrate the dll easily in visual basic, by going Project|Refrences and its on the list so I check it and its all good. The problem is im using a database package called equinox and I can't integrate it b/c it doesn't come on the list. Now I don't expect any of you to have ever of heard of equinox so I did some research and reliased that the list that equinox shows is the same as the list on OLE Viewer, that ships with vc++ So ultimately my question is how to I get my ATL dll to appear on the OLE viewer? - Ive created ActiveX dlls in visual basic and it seems to register it with the OLE viewer database for you, so how do I do it with the ATL dll? Im sorry if I use the wrong jargon or whatever but I hope it is understandable. thanx in advance Iain Fraser
who is it that keeps on nicking WizHarD name !! :P
Advertisement
You have to register the type library with the system.

Usually, that means that you have to implement DllRegisterServer and have a GUID for your component/library.

Then, you call RegSvr32.exe "Path to your dll here"

There's a few more details you definitely should be aware of, but I am no means a master. I'd suggest you consult google.
daerid@gmail.com
thank-you for the response, also sorry about my ignorance ive been sorta thrown in the deep end by my boss to get this COM stuff working without having the ground knowledge of it.

Anyway, it seems that the type libary is all ready registred. I beleve CComModule::RegisterServer does this for me or the midl compiler (whatever its called). Anyway the reason I belive this is that when I look in OLE Viewer I noticed I could see it under the "Type Libaries" root.

But what I want ( I think ) is to have the dll registered under the

Object Classes - All Object -

Branch, I believe that equinox generates its listing by showing this.

I don't quite understand what a Object is in this context. But what I do know is that when you create an "ActiveX dll" project in visual basic it registers it in this branch. So how can I register my dll in this branch?

thanks again
Iain Fraser
who is it that keeps on nicking WizHarD name !! :P

This topic is closed to new replies.

Advertisement