Java调用dll文件

一、maven项目可以添加依赖

<dependency>
   <groupId>net.java.dev.jna</groupId>
   <artifactId>jna</artifactId>
   <version>4.5.2</version>
</dependency>

二、调用dll,Java创建一个接口实现Library

package mys;

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

public interface TestDll extends Library {

    TestDll instanceDll = Native.loadLibrary("TestDll.dll", TestDll.class);


    /**
     * 求和
     * @param num 一个加数
     * @param num2 另外一个加数
     * @return 两个数和
     */
    int sum(int num, int num2);


}

三、测试main方法

package jna;

public class Test02 {
    public static void main(String[] args) {
        int sum = TestDll.instanceDll.sum(1,2);
        System.out.println(sum);
    }
}

四、模拟指针类型

需要用Memory类,(用PointerReference类导致内存异常,部署项目每次调用dll后都挂掉)

import com.sun.jna.Memory;

声明缓存长度

Memory memory = new Memory(34);

获取缓存内容

memory.getByteArray(0, 34)

清楚缓存

memory.clear();
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章