C# 指针转对象

搬砖的码农 2013-06-21 05:51:44
调用动态库,动态库返回一个对象指针,如何将改指针转换成对象(struct对象或class对象)。。
我试过直接将动态库接收的时候直接用对象接收,而不用指针接收,这样结果正确。但是我有很多个方法调用这个动态库,而且接收对象不同,我想调用同一个动态库声明,而不是每个方法再去声明一个。
所以我想直接声明一个用指针接收,然后再进行指针转对象。请问如何转换?(我用Intptr类型接收)
...全文
241 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
钛元素 2013-06-22
  • 打赏
  • 举报
回复
目的是什么?为什么这样用呢?
  • 打赏
  • 举报
回复
try Marshal.PtrToStructure
搬砖的码农 2013-06-22
  • 打赏
  • 举报
回复
引用 2 楼 Return_false 的回复:
可以利用委托吧,参考 C#调用C++动态链接库中的函数指针与函数指针结构
我那不是回调函数 比如下面的 [UnmanagedFunctionPointer(CallingConvention.StdCall)] public unsafe delegate long NetworkHandler(IntPtr IStudent, Classes @class) 我返回的是一个Student指针和一个Classes对象;而我想要的是将指针转换成一个Student对象,如何转?
钛元素 2013-06-22
  • 打赏
  • 举报
回复
引用 8 楼 zhurcn 的回复:
引用 6 楼 tgh1981 的回复:
目的是什么?为什么这样用呢?
通过指针跨语言传值,而且是多种类型调用同一个方法
我没有做过,是两个不同系统之间的传值吗? 1 用xml 2 用数据库 3 用端口接收数据包
搬砖的码农 2013-06-22
  • 打赏
  • 举报
回复
引用 6 楼 tgh1981 的回复:
目的是什么?为什么这样用呢?
通过指针跨语言传值,而且是多种类型调用同一个方法
搬砖的码农 2013-06-22
  • 打赏
  • 举报
回复
引用 5 楼 hjywyj 的回复:
try Marshal.PtrToStructure
谢谢,很合意
s490638622 2013-06-21
  • 打赏
  • 举报
回复
  • 打赏
  • 举报
回复
coobai 2013-06-21
  • 打赏
  • 举报
回复

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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