若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/84305627
各位读者,知识无穷而人力有穷,要么改需求,要么找专业人士,要么自己研究
红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)
其他(编程相关)(点击传送门)
《项目实战:Qt编译Qt库以及使用C#调用Qt库,并实现C#集成Qt的tcp客户端》
《Qt实用技巧:VS2017编写纯C库以及使用Qt调用C库方法》
《关于 C#调用C库Dll,有回调函数时,只执行一次回调函数就直接挂掉 的解决方法》
《关于 C#调用一个C/C++dll库运行时实现多个应用(静态变量区分) 的解决方法》
《关于 C#调用c库,将C#的byte[]传入C库的方法和将C库的char*向上传入C#的回调函数byte[] 的方法》
需求
使用C#开发,因某种原因,写了C库Dll,使用C#抓图数据传入C,将C库收到的图片数据向上传入C#回调函数。
当前现状
C#中将byte[]转换成Intptr传入C库,实际使用时,C#转IntPtr传入C库后,C库直接打印数据基本都是错误的。
实现原理
C#向下传入C/C++,将C#的byte[]传入C的unsigned char *;
C/C++向上传出到C#,将C的unsigned char *传出到C#的IntPtr。
实现方式
- C#将byte[]传入C/C++库
- C/C++库将[unsigned] char *传出到C#应用
原博主博客地址:https://blog.csdn.net/qq21497936
原博主博客导航:https://blog.csdn.net/qq21497936/article/details/102478062
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/84305627