C函数在D中的调用,该如何解决
C函数在D中的调用
C写的DLL中有一函数:
long senddata (long n1,char * comand ,long n2, char *senddata, char *device)
在delphi中应该如何调用?
请教同志们。
------解决方案--------------------
申明成:
function senddata(n1: Longint; comand: PChar; n2: Longint; senddata, device: PChar): Longint; external 'XXX.dll '; stdcall; //注:stdcall有可能要换成cdecl, 这取决于C中的函数头是如何定义的了
------解决方案--------------------
注意 stdcall 标志,如果对方按照API协议书写C函数,那么就必须使用 stdcall 标志,如果是按照C习惯书写的函数,就要做cdecl标志。建议双方按照API规范书写。
C写的DLL中有一函数:
long senddata (long n1,char * comand ,long n2, char *senddata, char *device)
在delphi中应该如何调用?
请教同志们。
------解决方案--------------------
申明成:
function senddata(n1: Longint; comand: PChar; n2: Longint; senddata, device: PChar): Longint; external 'XXX.dll '; stdcall; //注:stdcall有可能要换成cdecl, 这取决于C中的函数头是如何定义的了
------解决方案--------------------
注意 stdcall 标志,如果对方按照API协议书写C函数,那么就必须使用 stdcall 标志,如果是按照C习惯书写的函数,就要做cdecl标志。建议双方按照API规范书写。