JNA怎么调用32位的DLL?

小灰狼 技术主管  2021-04-13 04:57:56
有必要强调一下,DLL是第三方公司提供的,不是我们开发的,并且那家公司做这个DLL的开发团队已经不知道换了几拨人了,所以不可能会有64位的 DLL。

所以,有建议让我找64位DLL的朋友们,请免开尊口,否则您这是在给我添堵、给我添堵、添堵、堵……。
...全文
226 5 点赞 打赏 收藏 举报
写回复
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
小灰狼 2021-04-16
已经试过了,用32位jdk可以调用那个 dll 算了,就这个办法吧 简单点说,这是一个第三方提供的设备,通过USB访问,提供了DLL。 但是不排队后期还有其它的第四方、第五方提供DLL,如果那些人是64位的,可以就麻烦了
  • 打赏
  • 举报
回复
冰思雨 2021-04-15
引用 楼主 小灰狼 的回复:
有必要强调一下,DLL是第三方公司提供的,不是我们开发的,并且那家公司做这个DLL的开发团队已经不知道换了几拨人了,所以不可能会有64位的 DLL。 所以,有建议让我找64位DLL的朋友们,请免开尊口,否则您这是在给我添堵、给我添堵、添堵、堵……。
两个方案: 1. 像楼上几位说的,你用 32 位的 JVM 运行程序就可以调用 32 位的 DLL 了; 2. 用 C 写一个进程,专门用来做 DLL 调用的,然后,JVM 在启动的时候拉起这个进程,然后,进程间通信,完成RPC调用即可。 总之,微软官方都说了,64位的进程只能调用64位DLL,32位的进程只能调用32位的DLL,没有其他情况。
  • 打赏
  • 举报
回复
KeepSayingNo 2021-04-14
在32位的JDK的bin目录下对你的调用类进行编译 cd D:\softwares\Java\java32\jdk1.7.0_65\bin javac.exe -classpath jna-4.1.0.jar testDll.java
  • 打赏
  • 举报
回复
zzxiaoma 2021-04-14
32位的jdk可以调用32位的DLL
  • 打赏
  • 举报
回复
a1767028198 2021-04-13
那你可以试试安装32位的jdk 能不能搞定这个 这你要在64位的系统 非得运行32位下的dll window都不一定能稳定运行
  • 打赏
  • 举报
回复
相关推荐
发帖
Java SE
加入

6.2w+

社区成员

Java 2 Standard Edition
申请成为版主
帖子事件
创建了帖子
2021-04-13 04:57
社区公告
暂无公告