打印本文 打印本文 关闭窗口 关闭窗口
怎样在C#中调用Delphi6写的DLL
作者:武汉SEO闵涛  文章来源:敏韬网  点击数695  更新时间:2009/4/23 18:30:15  文章录入:mintao  责任编辑:mintao

我在编写一个系统时遇到了一个问题,无法在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类型数据。
呵呵~~~~~~~

打印本文 打印本文 关闭窗口 关闭窗口