DllRegisterServer entry point not found - when registering Vb.NET DLL?

I wrote a dll on vb.net that calls a web service, uses the returned data and passes the results to the calling program. I originally wrote in VS 2008, on Windows 7 (x64). I tested it in vb 6, also written on windows 7, and it worked. The vb6 program got the data, and I could move on.

The real world for me, however, is to use this dll inside another dll written in vb 6. When I get the code, I get the error "ActiveX component cannot create object"

Dim myWebService as webService.ComClass1
Set myWebService = New webService.ComClass1

I recompiled my code on windowsXP (x86) and rewrote it over .dll and .tlb.

When I try to register a dll, I get an error: "DllRegisterServer entry point not found." It seems that .tlb is well registered in VB, if you add a link to it, and Intellesense also works.

Anyone have any ideas what I need to do for this to work?

+3
source share
2 answers

You do not register .NET assemblies with Regsvr32.exe. You must use Regasm.exe, you will find the tool in the framework directory. Use the / codebase option if you do not put the assembly in the GAC. You should not be on a dev machine.

This worked well, perhaps because you let Visual Studio do it for you.

+4
source

DLL.net , DLL VB6..NET DLL tlb , .

REGASM DLL.net. , , , .

0

All Articles