我在编写一个系统时遇到了一个问题,无法在C#中调用Delphi6写的DLL,只因为DLL的参数是string类型的。然后在网上找相关的资料,还是没有结果。经过我的再三琢磨,现在已经解决,特写此文章与大家分享我的喜愉!
Dellphi DLL文件:
///////////////////////////////////////////////////////////////////
library mydll;
uses
SysUtils,
Classes;
{$R *.res}
function Out_Char(str1:PChar;str2:PChar):Pchar;stdcall;
var
temp:PChar;
begin
GetMem(temp,Length(str1) Length(str2) 1);
StrCopy(temp,str1);
StrCat(temp,str2);
Result := temp;
end;
Exports
Out_Char;
begin
end.
//////////////////////////////////////////////////////////////
在C#中调用方式:
[DllImport("mydll.dll")] public static extern string Out_Char(string str1,string str2);
然后就实现了DLL 传string类型数据。
呵呵~~~~~~~
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




