怎样在C#中调用Delphi6写的DLL

类别:.NET开发 点击:0 评论:0 推荐:

我在编写一个系统时遇到了一个问题,无法在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://com.8s8s.com/it/it42795.htm