views:

288

answers:

2

I've built a DLL for Domino Server 8.5 for Windows and installed it as a DSAPI filter, but every time I restart Domino I get "HTTP Server: Failed to load DSAPI module C:\path_to_filter\filter.dll"

Is there any way to determine why this is failing to load?

I built the DLL from a C++ project in Visual Studio 2008 and used the libraries and includes from the Lotus C API for Notes/Domino 8.5. I copied most of the code from the sample DSAPI filter, but stripped out most of the actual functionality so that I can fill it in with my own. It doesn't seem to be an error with the code, as I've been unable to find an actual exception at this point.

+2  A: 

Get depends.exe, and run it on your DLL. It will show you what other DLLs it loads, and the errors when it cannot find one of them.

Ned Batchelder
I did this, and I don't seem to have any errors. The only dependencies I have are MSVCR90D.DLL, NTDLL.DLL, and KERNEL32.DLL, and they're all in c:\windows\system32.
DylanW
Found the problem with Dependency Walker--the function names were being changed in the actual DLL, and were not the same as the ones being expected by Domino.I defined them in an extern "C" block, and the DLL loaded correctly.
DylanW
A: 

Try setting debug_dsapi=10 in your server ini and analyze it's output for what errors might be thrown

DebugGeek

related questions