Java 调用dll

2023-03-13  本文已影响0人  伊夫_艾尔斯

Java 可以通过 Java Native Interface (JNI) 调用动态链接库(dll)文件。下面是一个简单的步骤指南:

public class MyNativeClass {
    public native int myNativeMethod(int param);
}
javah -jni MyNativeClass

该命令将生成一个名为 MyNativeClass.h 的文件,该文件包含有关 myNativeMethod 方法的信息。

#include <jni.h>
#include "MyNativeClass.h"

JNIEXPORT jint JNICALL Java_MyNativeClass_myNativeMethod(JNIEnv *env, jobject obj, jint param) {
    // 在这里编写本地代码,使用传递进来的参数 param 和对象 obj
    // 并返回结果
}
public class Main {
    static {
        System.loadLibrary("MyNativeLibrary");
    }

    public static void main(String[] args) {
        MyNativeClass myNativeClass = new MyNativeClass();
        int result = myNativeClass.myNativeMethod(42);
        System.out.println("Result: " + result);
    }
}

在这个例子中,我们使用 System.loadLibrary 方法加载名为 MyNativeLibrary 的本地库,然后创建一个 MyNativeClass 实例并调用 myNativeMethod 方法。该方法将返回一个 int 类型的结果,该结果将打印到控制台上。

请注意,JNI 可以是一个有挑战的主题,需要对 C/C++ 编程和 Java 的高级知识。建议您参考 JNI 文档和示例以获取更多信息和指导。

From ChatGPT

上一篇下一篇

猜你喜欢

热点阅读