以下为delphi写的DLL文档!
Function OCR (data:Pointer):Pchar; stdcall ;
var
Image: TBITMAP;
bitmapMem: TMemoryStream;
begin
bitmapMem:= TMemoryStream.Create;
try
bitmapMem.WriteBuffer(data^,5454);
bitmapMem.Position:=0;
Image:=TBITMAP.Create;
try
Image.LoadFromStream(bitmapMem);
bitmapMem.Free;
Result:=Pchar(BmpToStr(Image));
finally
Image.free;
end;
except
Result:='F';
end;
end; 我用delphi写DLL寄主程序来进行调试的Dll调用源码!
Function OCR (data:Pointer):Pchar; stdcall ; external 'LJOCR.dll' ;
可以成功调用!
可是c如何直接调用这个dll的函数,c的函数的定义如何写?
Function OCR (data:Pointer):Pchar; stdcall ;
var
Image: TBITMAP;
bitmapMem: TMemoryStream;
begin
bitmapMem:= TMemoryStream.Create;
try
bitmapMem.WriteBuffer(data^,5454);
bitmapMem.Position:=0;
Image:=TBITMAP.Create;
try
Image.LoadFromStream(bitmapMem);
bitmapMem.Free;
Result:=Pchar(BmpToStr(Image));
finally
Image.free;
end;
except
Result:='F';
end;
end; 我用delphi写DLL寄主程序来进行调试的Dll调用源码!
Function OCR (data:Pointer):Pchar; stdcall ; external 'LJOCR.dll' ;
可以成功调用!
可是c如何直接调用这个dll的函数,c的函数的定义如何写?
typedef char* (__stdcall *fnOCR)(void*);
fnOCR OCR;
OCR = (fnOCR)GetAdress(LoadLibray("LJOCR.dll"), "OCR");静态方法:
#pragma comment(lib, "LJOCR.lib");
extern "C" __declspec(dllimport) char* OCR(void* data);