求教,c#如何调用delphi编写的dll中的函数
2008-10-14 16:31
651 查看
求教,c#如何调用delphi编写的dll中的函数 Delphi / Windows SDK/API
http://www.delphi2007.net/DelphiBase/html/delphi_20061219114602118.html
如题;
由于工作需要用到c#,但是有写函数用c#太不习惯了,于是用delphi写,但是调用时出现了问题,开始以为是函数写错了,但是后来写了个最简单的showmessage也不行
delphi中
声明部分
procedure Showmsg(mText:string); cdecl;
定义部分
procedure Showmsg(mText:string); cdecl;
begin
ShowMessage(mText);//就随便测试下
end;
给出端口
exports
Showmsg; //编译生成Project2.dll
c#中
引用
[DllImport("Project2.dll")]
private static extern string Showmsg(string mText);
随便放入一个按纽点击事件
Showmsg("afsdfas");
结果只show出了第一个字符 “a”
如果把delphi中的过程写成一个函数,那就show成了空的,没接收到入参
不知道应该怎样写,请高手指点
仔细看一下有关教材,Delphi里的string类型与C里面的并不一样,
procedure Showmsg(mText:pchar); cdecl;
这样才可以
但是c#里面好象没有pchar型,只有char型
试了一下不行,show出来的是乱码。。。
顶
汗,我的意思是指在DELPHI里面要使用pchar 型......
或者干脆使用指针+长度 两个参数来传递.....
结贴
http://www.delphi2007.net/DelphiBase/html/delphi_20061219114602118.html
如题;
由于工作需要用到c#,但是有写函数用c#太不习惯了,于是用delphi写,但是调用时出现了问题,开始以为是函数写错了,但是后来写了个最简单的showmessage也不行
delphi中
声明部分
procedure Showmsg(mText:string); cdecl;
定义部分
procedure Showmsg(mText:string); cdecl;
begin
ShowMessage(mText);//就随便测试下
end;
给出端口
exports
Showmsg; //编译生成Project2.dll
c#中
引用
[DllImport("Project2.dll")]
private static extern string Showmsg(string mText);
随便放入一个按纽点击事件
Showmsg("afsdfas");
结果只show出了第一个字符 “a”
如果把delphi中的过程写成一个函数,那就show成了空的,没接收到入参
不知道应该怎样写,请高手指点
仔细看一下有关教材,Delphi里的string类型与C里面的并不一样,
procedure Showmsg(mText:pchar); cdecl;
这样才可以
但是c#里面好象没有pchar型,只有char型
试了一下不行,show出来的是乱码。。。
顶
汗,我的意思是指在DELPHI里面要使用pchar 型......
或者干脆使用指针+长度 两个参数来传递.....
结贴
相关文章推荐
- 求教,c#如何调用delphi编写的dll中的函数
- C#调用delphi编写的dll时如何传入传出OLEVariant
- C# 如何调用 Delphi 编写的 DLL 方法
- 如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)
- [原创]如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)
- [原创]如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)
- 如何在Delphi中调用.Net编写的DLL中的函数(Function)、过程(Procedure)
- C# 如何调用 Delphi 编写的 DLL 方法
- delphi如何调用C# dll
- C#中如何调用Delphi写的Dll
- C#中如何调用Delphi写的Dll,实现画图功能
- C# 如何调用 C++ DLL中的函数接口和回调函数
- C#中如何调用C++编写的DLL
- C#中如何调用Delphi写的Dll
- C#中如何调用C++编写的DLL
- 如何生成DLL文件并导出函数及如何在C++或C#中调用DLL中导出的函数
- 如何用VB编写自己的DLL文件,并调用其中的函数
- 如何利用MFC编写的.exe调用C#编写的dll动态库
- Delphi中如何把函数代码调出主程序,写到“DLL”中并调用
- 在C#中如何调用C++编写的DLL