How do I provide my dll with a DllRegisterServer entry point. When installing the dll with a bat file like
@echo off

copy NMEA.dll %SystemRoot%\system32
regsvr32 %SystemRoot%\system32\NMEA.dll

I get the following messagebox
RegSvr32


C:\WINNT\System32\NMEA.dll was loaded, but the DllRegisterServer entry point was not found.

DllRegisterServer may not be exported, or a corrupt version of C:\WINNT\system32\NMEA.dll
may be in memory. Consider using PView to detect and remove it.
Posted on 2004-02-14 11:50:49 by minor28
Are you writing a COM or ActiveX dll? If you are not, then you do not need to register your dll. DllRegisterServer is exported with no parameters. Here is an excerpt of documentation from MSDN:


DllRegisterServer
Instructs an in-process server to create its registry entries for all classes supported in this server module. If this function fails, the state of the registry for all its classes is indeterminate.

STDAPI DllRegisterServer(void);

Return Values
This function supports the standard return values E_OUTOFMEMORY and E_UNEXPECTED, as well as the following:

S_OK
The registry entries were created successfully.

SELFREG_E_TYPELIB
The server was unable to complete the registration of all the type libraries used by its classes.

SELFREG_E_CLASS
The server was unable to complete the registration of all the object classes.


Remarks
E_NOTIMPL is not a valid return code.
Posted on 2004-02-14 17:17:10 by sluggy
I am improving my Visual Basic knowledge and I have written a masm dll with a string parsing function. I works well. Now I have found some annoying things with the VB IDE. For example you can't set any options to open code window maximized or set you own project path. That's what I am working with now.

I have succeded to create an addin to VB to open the code window maximized at start up, but nothing more. There are no standard events that suits my purpose. Now I am trying to hook and realize the need of masm.

Therefore I will try to write an addin in masm. Perhaps it is a COM dll. I have read the threads at COM board. I seems to be very difficult to understand. Any hints are wellcome.

Best Regards.
Posted on 2004-02-15 04:05:11 by minor28