Java 通过JNative调用已经编写好的DLL

来源:互联网 发布:网络直播平台 论文 编辑:程序博客网 时间:2024/05/22 08:21
  1.  首先下载JNative ,也就是下载JNative.jar 及JNativeCpp.dll

  2. 将JNative.jar 导入项目,将JNativeCpp.dll拷贝至系统的system32下,将要调用的自己的dll文件也放到系统的system32下

  3. 新建类 ,在方法中加入以下一段代码


    ​    ​    ​    ​//  System.loadLibrary("ACpuVisitor");  //系统加载已经放在system32下的dll

    

        JNative jnative=new JNative("ACpuVisitor","getSamLastSW"); // 通过JNative 来加载名为ACpuVisitor的dll中的getSamLastSW方法

        jnative.setRetVal(Type.INT); //设置getSamLastSW方法的返回值类型

        int i=0;


        //赋予参数值


        jnative.setParameter(i++, Type.INT,"1"); // 设置getSamLastSW方法的参数   setParameter()方法的第一个参数表示设置的是getSamLastSW()方法的第几个参数,(参数下标从0开始);第二个参数表示传递的参数的类型;第三个参数表示参数的值



        jnative.setParameter(i++, Type.STRING,"sa");


        jnative.setParameter(i++, Type.INT,"1");


        //函数执行


        jnative.invoke();


        //打印函数返回值


        System.out.println(Integer.parseInt(jnative.getRetVal()));


0 0