java调用dll

该文章已经过时,可参考最新博文链接 https://blog.csdn.net/qq_36874292/article/details/89467749

 

只推荐一种方法,jni方式你放弃吧,很繁琐

jnative好用,但是文件路径等等还是有问题,不能像java一样去使用。也不推荐

大哭

jna调用,意外之喜很好用的。

简而言之,jna需要自己定义java接口,这个类的方法和dll文件一样,你必须十分清楚dll文件的结构和里面的方法以及返回值,参数。

 

注意事项:java调用dll  需要jdk32位版本

 

附上 jna接口(和dll文件对应的函数名和方法一致,):

package com.dewell.jnativetest;


import com.sun.jna.Library;
import com.sun.jna.Native;


/**
 * @author 作者 :xinyao
 * @version 创建时间:2018年4月23日 下午5:06:27
 */
public interface Jna extends Library {


Jna instanceDll = (Jna) Native.loadLibrary("EDI_Middleware", Jna.class);


public void initial_DM();


public String gen_edi2carrier(Double d);

 

}

微笑

jnaTest:

package com.dewell.jnativetest;


/**
 * @author 作者 :xinyao
 * @version 创建时间:2018年4月23日 下午5:10:36
 */
public class JnaTest {
public static void main(String[] args) {
Double double1 = new Double(123456789);
Jna.instanceDll.initial_DM();
String gen_edi2carrier = Jna.instanceDll.gen_edi2carrier(double1);
System.out.println(gen_edi2carrier);
}

}

 

 

文章参考链接:

https://blog.csdn.net/jswawawa/article/details/53738554

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值