关于JNA调用32位和64位动态链接库,即*.dll
来源:互联网 发布:淘宝简直被骗天涯论坛 编辑:程序博客网 时间:2024/05/17 22:10
今天研究了下JNA,感觉收获不小,这货可比JNI好用多了。
先上个实例,我这参考了文章
http://blog.csdn.net/shadowsick/article/details/9101477#comments
我按照此文实现了JNA的第一个程序。
但是当我把这个程序拷到64位主机上再运行就会报错:
Exception in thread "main" java.lang.UnsatisfiedLinkError: Unable to load library 'test': 找不到指定的模块。
于是问题来了不同位数的dll如何兼容呢?
我又做了一个64位的test.dll对不同主机,dll,jdk位数进行了测试结果如下:
结论:dll可否调用与jdk位数有关,需要一致才行。
以下是过程
1.根据参考文章制作了32位的dll:testx86.dll,内含一个用c语言写的add(int a,int b)。
2.用vs2010再制作一个64位的dll,过程十分简单,用vs2010打开先前制作了32位的dll源码,选择编译平台为64位再输出即可。
3.略微根据修改参考文章所写的代码使其便于测试。
4.结果见上表,另附源码在百度云盘:http://pan.baidu.com/s/1mhaOhWO
1 0
- 关于JNA调用32位和64位动态链接库,即*.dll
- 关于JNA调用32位和64位动态链接库,即*.dll
- 关于32位和64位部署出现C#调用动态库DLL不成功的问题
- JNA调用32dll和64位dll的兼容解决
- 64位win7 使用jna调用C dll报错
- 使用JNA框架调用dll动态链接库
- 使用VS自带Dumpbin判断动态链接库.dll和应用程序.exe是32位还是64位
- Jna调用动态链接库
- 判断应用程序.exe及动态链接库.dll是32位还是64位
- 判断应用程序.exe及动态链接库.dll是32位还是64位
- 64位程序调用32位DLL
- java 解决调用c语言实现简单HelloWorld函数生成.dll动态链接库的32位dll文件无法在64位机上运行
- JNA调用C动态库dll、so
- JNA方式调用dll动态库
- DLL 即动态链接库
- JNA调用C语言动态链接库
- 【转载整理】eclipse 开发c/c++、Java使用JNI调用C程序、生成64位dll动态链接库
- 关于Java调用32/64位dll的问题
- C#-如何让TABLE中的TEXTBOX充满单元格
- centos防火墙管理
- 什么情况使用存储过程
- 船舶行业钢板堆垛管理特色和创新管理思路
- Android开发:Google网络框架Volley的使用
- 关于JNA调用32位和64位动态链接库,即*.dll
- Android Sqlite数据库之使用事务
- 关于fragment的学习总结(1)
- Mysql-5.6.26 安装
- 配置Oracle VM VirtualBox,实现内外网访问笔记,以进行spark、hadoop集群开发测试
- Android03_事件处理一
- 安卓ContentProvider实现查找,分批查找
- Android04_基本控件及表单三大控件
- android应用签名详解