Java 调用Dll

来源:互联网 发布:ae cs6 mac 破解 编辑:程序博客网 时间:2024/05/23 13:21

Java 中怎么能调用到dll中的函数呢?

关键是java中生的本地函数名参数和dll中的本地函数名参数一模一样。


这个程序是java中调用dll中的求和函数。


一,java代码部分操作


1.新建工程


2.DllTest.java代码

package com.aizizai.calldll;public class DllTest {static {System.loadLibrary("hellodll");}public static native int sum(int a, int b);public static void main(String[] args) {System.out.println("sum(2,5) = " + sum(2, 5));}}

3. 生成头文件

Java调用dll测试\src>javac com/aizizai/calldll/DllTest.java
Java调用dll测试\src>javah com.aizizai.calldll.DllTest


二,VC利用前面的头文件生成dll。本文使用的是vs2010。


1. 创建项目

新建项目--> vc++ --> win32项目 --> 命名为hellodll -->应用程序类型:dll -->ok。

2. 添加头文件

a. 把

/jdk/include/jni.h

/jdk/include/win32/jawt_md.h

/jdk/include/win32/jni_md.h

拷到项目目录下或者Vs的include目录下。

b. stdafx.h中添加

#include "com_aizizai_calldll_DllTest.h"

3. 在源文件中添加函数实现

// hellodll.cpp : 定义 DLL 应用程序的导出函数。//#include "stdafx.h"JNIEXPORT jint JNICALL Java_com_aizizai_calldll_DllTest_sum(JNIEnv *env, jclass ss, jint a, jint b){return a+b;}

4. 生成dll

生成 ---> 生成dll。

即可在项目的Debug目录下看到,hellodll.dll文件


三,使用

把dll文件拷到 c:\windows目录下,运行java程序。ok。



程序下载地址:http://download.csdn.net/detail/u012587637/8065041










0 0
原创粉丝点击