Many thanks Felipe, the problem is the exported name(s).
The exported names is SCAN_AllocateBuffer_A and SCAN_AllocateBuffer_W.
Thanks again!
Gabor
Felipe Monteiro de Carvalho írta:
Can you show us the c declaration of the function you are calling? It
should be on a .h file.
Also, you should put an way to verify if the calls are working, like:
DLL_Handle:=LoadLibrary('SCNAPI32.DLL');
if DLL_Handle = nil then raise EException.Create('Could not load
library');
Pointer(SCAN_AllocateBuffer):=GetProcedureAddress(DLL_Handle,
'SCAN_AllocateBuffer');
if Pointer(SCAN_AllocateBuffer) = nil then raise
EException.Create('Could not load procedure');
One possibility is that this C library uses name mangling, and the
function has a different name from the canonical one. You can check
all function names exported by the function using this software:
http://wiki.lazarus.freepascal.org/Libview
_______________________________________________
fpc-pascal maillist - fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal