|
-
July 13th, 2006, 11:18 AM
#1
Using TLB
I created very simple Class Library in VB 2005 (let's call it COMInterop). I
set Register For COM Interop property to true to make it accessible by VB6
program.
After I compiled it, I got COMInterop.dll and COMInterop.tlb files, I have
no problem with using both of them on the machine where the project was
compiled - TLB with VB6 clients and DLL with VB 2005 clients.
I copied the tlb and dll files onto another machine and registered TLB file
with regtlib.exe. I've got a message about successful registration.
I created a new VB 2005 Windows Form project, added the reference to
COMInterop.dll and it works fine.
I created VB6 project, added a reference to this TLB. I'm trying to use it
with the simple code which works with VB 2005, but produces an error in VB6:
Run time error '429':
ActiveX component can't create object
The code in client:
Private obj As COMInteropTest.COMInterop
Private Sub Command1_Click()
Set obj = New COMInteropTest.COMInterop 'The error occurs on this line
MsgBox obj.myFunction
End Sub
What am I missing? How do I make VB6 client work with TLB on any machine,
not only on the machine it was created?
Thank you
-
July 13th, 2006, 02:21 PM
#2
Re: Using TLB
Use Regsvr32 to register the DLL.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|