Sign in to follow this  

ATL

This topic is 4716 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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

Share this post


Link to post
Share on other sites

This topic is 4716 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this