JNA
时光留夏
观棋不语,落子无悔
展开
-
java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 应用程序。
环境是64 位 win10.JNA 调用 dll 库时,报错:java.lang.UnsatisfiedLinkError: %1 不是有效的 Win32 应用程序。原因:1.动态库位数与jdk位数不符;2.编译的动态库有问题解决方法:jdk换成32位换32位如果有问题请参考:64位转32位遇到的问题配置idea各种 Error:java: 无效的XXX...原创 2019-04-24 09:27:32 · 21185 阅读 · 8 评论 -
JNA实战笔记汇总(一)—— JNA简介及demo环境创建
目录1、简介2、原理3、配置环境,创建demo3.1 搞清楚.dll/.so文件适用环境3.2 创建一个普通的maven项目3.2.1 将.dll/.so文件放在resources根路径下3.2.2 pom.xml文件添加jna依赖3.2.3 编写一个CLibrary接口,继承Library接口3.2.4 编写一个测试类调用c++函数代码VixHz_InitSD...原创 2019-04-30 14:59:34 · 43232 阅读 · 17 评论 -
JNA实战笔记汇总(二)——JNA和C / C ++的数据类型映射(dll函数回调、结构体、指针)
目录JNA技术难点1、函数回调2、结构体3、指针JNA技术难点有过跨平台、跨语言开发的程序员都知道,跨平台、预研调用的难点,就是不同语言之间数据类型不一致造成的问题。绝大部分跨平台调用的失败都是这个问题造成的。关于这一点,不论何种语言、何种技术方案都无法解决这个问题。JNA也不列外。上面说到接口中使用的函数必须与链接库中的函数原型保持一致,这是JNA甚至所有跨平台调用的...原创 2019-04-30 16:32:17 · 12918 阅读 · 9 评论