C#调用delphi dll

蛋炒饭 2008-12-05 04:32:23
最近用C#调用delphi dll文件时,遇到几个问题。以下delphi数据类型,在C#中用什么对应:
delphi c#
Pointer ?
char ?
Dword ?
Integer ?
char[] ?
另外delphi中的nil值对应c#中的null吗?
...全文
281 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
wanghui0380 2008-12-06
  • 打赏
  • 举报
回复
pointer-------inptr
king19840811 2008-12-06
  • 打赏
  • 举报
回复
Pointer 标记unsafe
char char
Dword UNSIGN LONG
Integer int32
char[] char[]
delphi中的nil值对应c#中的null
NULL是无值无类型
NIL是空指针型
蛋炒饭 2008-12-06
  • 打赏
  • 举报
回复
多谢各位仁兄
问题已经解决了,不过我的Pointer还用Pointer对应
VirtualDesktop 2008-12-06
  • 打赏
  • 举报
回复
Pointer 可以是IntPtr 也可以直接用 int 对应
char的话,我不会delphi 如果delphi里面的char是一个Unicode字符, 那就对应C#里面的char, 如果delphi的char与C++里面char的概念一样,那就是C# 里面的byte
Dword 是 int32, 也就是int
Integer同上
nil 是 IntPtr.Zero


char[] 这个比较麻烦, 如果你想要用char[]传递一个字符串, 那建议直接用C#的string然后给这个参数加上[MarshallAs(UnmanageType.xxx)] (这个xxx根据你的字符串类型而定,请参考msdn)属性。

1,978

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 其他语言讨论
社区管理员
  • 其他语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧