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;运行的时候报内存错误
 
W

wr960204

Unregistered / Unconfirmed
GUEST, unregistred user!
有何问题
 

迟雨

Unregistered / Unconfirmed
GUEST, unregistred user!
其实就是类型的问题。。delphi中类型定义与 C++中的类型定义在传递的时候发生错误。。运行报内存出错
 

迟雨

Unregistered / Unconfirmed
GUEST, unregistred user!
自己解决了。
 

迟雨

Unregistered / Unconfirmed
GUEST, unregistred user!
接受答案了.
 

Similar threads

顶部