delphi中如何定义和使用 C++编写的dll中的一个函数(100)

  • 主题发起人 主题发起人 迟雨
  • 开始时间 开始时间

迟雨

Unregistered / Unconfirmed
GUEST, unregistred user!
C编写的DLL 中的函数定义extern "C" long __declspec(dllexport) Encode(PCHAR pSourceData,ULONG sourceLen , PCHAR pTagData, PULONG tagLen );在delphi中这么定义 function Encode(pSourceData:PChar;sourceLen:LongWord;pTagData:PChar;tagLen:PLongWord):Integer;cdecl; external 'Encode.DLL' ;在delphi中使用procedure TForm1.Button2Click(Sender: TObject);var encode : array [0..127] of Char; pencode : PChar; i : LongWord;begin pencode := PChar(@encode) ; i := 128; Encode(PChar('aaa'),3,pencode,@i); Edit2.Text := encode;end;运行的时候报内存错误
 
有何问题
 
其实就是类型的问题。。delphi中类型定义与 C++中的类型定义在传递的时候发生错误。。运行报内存出错
 
自己解决了。
 
接受答案了.
 
后退
顶部