当前位置: 首页 > news >正文

广东网站推广公司一个域名多个网站

广东网站推广公司,一个域名多个网站,seo站群系统,南京展厅设计装修近期使用Java开发有关于摄像机接收到数据的上传#xff0c;因为摄像机处理图像是用C语言实现的#xff0c;所以开发需要用到JNA#xff0c;实现JAVA对C语言的回调,因为具体的开发方式官方文档里面有示例#xff0c;所以本文只是简单的把需要注意的点罗列出来。一、 定义JNA…近期使用Java开发有关于摄像机接收到数据的上传因为摄像机处理图像是用C语言实现的所以开发需要用到JNA实现JAVA对C语言的回调,因为具体的开发方式官方文档里面有示例所以本文只是简单的把需要注意的点罗列出来。一、 定义JNA提供一些JAVA工具类在运行期间访问本地库如dll/so。二、 数据类型对照表官方提供的数据参考表完全够用当使用数据参考时候注意参考头文件宏定义。1、常见数据类型对照Java 类型C 类型原生表现booleanint32位整数 (可定制)bytechar8位整数charwchar_t平台依赖shortshort16位整数intint32位整数longlong long, __int6464位整数floatfloat32位浮点数doubledouble64位浮点数Buffer/ [Pointer]pointer平台依赖(32或 64位指针)[] (基本类型的数组)Pointer/array32或 64位指针(参数/返回值)其他常用Java 类型C 类型原生表现Stringchar*/0结束的数组 (native encoding or jna.encoding)WStringwchar_t*/0结束的数组(unicode)String[]char**/0结束的数组的数组WString[]wchar_t**/0结束的宽字符数组的数组Structure[]struct[]结构体的数组邻接内存Callback(*fp)()Java函数指针或原生函数指针NativeMappedvaries依赖于定义NativeLonglong平台依赖(32或64位整数)PointerTypepointer和 Pointer相同Structurestruct*\ struct指向结构体的指针或结构体都明确指出后面详细讨论2、C语言部分常用定义注意dll内的定义。#define WORD unsigned short#define DWORD unsigned int#define LONG int#define LLONG long#define INT64 long long#define LDWORD long#define BOOL int三、调用方法1、简单函数调用这里使用deSDK.dll放到工程目录之下。dll提供接口函数BOOL C_Init(LDWORD dwUser);Java代码声明public class getdeSDK{public interface Function extends Library {Function Jinit (Function)Native.loadLibrary(getdeSDK.dll,Function.class);public boolean C_Init(Nativelong dwUser);}}Java代码调用boolean flag getSDK.Function.Jinit.C_Init(1);2、回调函数调用在dll中定义回调函数使用时候直接继承(implements)java中声明的接口。Java代码声明public interface fDataCallBack extends StdCallCallback {public int invoke(NativeLong dwUser);}3、模拟结构体回调函数参数会出现结构体或者以结构体本身作为其他的结构体的元素存在判断结构体是以本身传递还是所为指针存在详细使用看官方文档。java声明public static class MYCLASS extends Structure{//这里写与dll中相对应的变量与常量。public Nativelong dwUser;public byte[] dwName;//char数组}4、注意事项枚举(enum)在dll中使用enum在java声明中同样使用enum但要注意的是在C中直接使用枚举成员可以作为序号来用而java需要在枚举成员后加ordinal()方法。ByReference与ByValuepublic static class ByValue extends MYCLASS implements Structure.ByValue {}public static class ByReference extends MYCLASS implements Structure.ByReference {}如果你的Struct实现Structure.ByReference接口那么JNA认为你的Struct是一个指针。指向C语言的结构体。如果你的Struct实现Structure.ByValue接口那么JNA认为你的Struct是值类型就是C语言的结构体四、参考资料1、官方文档2、部分博客
http://www.yutouwan.com/news/243676/

相关文章:

  • 农业信息中心网站建设公众号微信商城
  • 网页设计介绍北京网站网站建设6135678
  • 重庆网站维护制作wordpress只允许vip可以推广
  • 绵阳网站建设报价网站空间ip是一个域名
  • 净化科技网站建设毕业设计网站开发的中期报告
  • 小型公司网站建设知乎网站开发语言有几种
  • 济南做网站得多少钱美食网站建设毕业设计
  • 免费成品网站江苏常州武进区建设局网站
  • 天津网站开发建设咸宁网站建设解决方案
  • 做汽车行业必须注册际零件网站网站遭攻击
  • 高端网站开发建设新民正规网站建设价格咨询
  • 福田附近公司做网站建设多少钱电商门户网站
  • 网站制作培训多少钱app开发制作全过程
  • 网站空间服务吴江城乡建设局网站
  • 招商网站搭建费用三亚建设网站
  • tint-k主题做企业网站南京编程培训机构
  • 合肥网站建设=388元国外网站做freelancer
  • 网站建设需要摊销几年搭建企业网站流程
  • 宣城 网站建设哪些网站可以免费
  • 傻瓜做网站用什么软件广州建设银行投诉网站
  • 国外做游戏的视频网站做视频网站视频用什么插件吗
  • 网站建设的一般流程排序为百度指数网站
  • 怎么通过贷款网站找做贷款客户永久免费云linux服务器网页
  • 网站建设设计设计为什么备案关闭网站
  • 自己建网站收费吗电子商务公司取名字参考大全
  • 网站建设单词网站建设不备案后果
  • 多张图做网站背景河东做网站公司
  • 怎么设计个人网站泉州设计网站
  • 做死活题网站wordpress预加载插件
  • 大学哪个专业可以做网站中国食品加工网