c++ builder 如何调用delphi编写的动态链接库? ( 积分: 50 )

  • 主题发起人 主题发起人 liuying1129
  • 开始时间 开始时间
L

liuying1129

Unregistered / Unconfirmed
GUEST, unregistred user!
delphi编的dll中函数是这样定义的:
function DeCryptStr(aStr: Pchar;
aKey: Pchar): Pchar;stdcall;
在delphi中如下的方法调用是通过的:
function DeCryptStr(aStr: Pchar;
aKey: Pchar): Pchar;stdcall;external 'DESCrypt.dll';
 
delphi编的dll中函数是这样定义的:
function DeCryptStr(aStr: Pchar;
aKey: Pchar): Pchar;stdcall;
在delphi中如下的方法调用是通过的:
function DeCryptStr(aStr: Pchar;
aKey: Pchar): Pchar;stdcall;external 'DESCrypt.dll';
 
Windows API函数LoadLibray和GetProcAddress
指针声明用char* __stdcall
 
typedef char* (__stdcall *fDeCryptStr)(char *, char *);
fDeCryptStr DeCryptStr;
HINSTANCE hDLL = LoadLibrary("DESCrypt.dll");
if (hDLL)
DeCryptStr = (fDeCryptStr)GetProcAddress(hDLL, "DeCryptStr");
 
someset:这是动态调用,我要静态调用
 
静态一般需要.lib引入库
DELPHI编译时不知是否生成过
如果有,加入到工程中并写一个函数原型声名就行了
 
接受答案了.
 
后退
顶部