C#调用DELPHI的DLL时传递string数组

DELPHI里的是这样的:
function ArrayTst(strAry:Array of PChar):PChar;stdcall;
var
i:integer;
strAdd:string;
begin
strAdd:= ' ';
for i:=low(strAry) to High(strAry) do
begin
strAdd:=strAdd+strAry[i]
end;
Result:=PChar(strAdd);
end;
C#里是这样的:
声明:
[DllImport( "ArrayTest1.dll ", EntryPoint = "ArrayTst ", CharSet = CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public static extern string ArrayTst(string[] ary);
调用:
string[] arytst=new string[]{ "a1 ", "b2 ", "c3 "};
TextBox1.Text=ArrayTst(arytst);

posted @ 2013-05-01 15:22  小天1981  阅读(477)  评论(0编辑  收藏  举报