vs2017生成dll动态库供java调取
一、利用eclipse等编辑工具创建项目dllTest
二、在src下面创建com包,在com包下创建Test1.java,且代码内容如下图:
package com;
import com.sun.jna.Native;
import com.sun.jna.win32.StdCallLibrary;
public class Test1 {
public interface TestDll extends StdCallLibrary {
TestDll INSTANCE = (TestDll)Native.loadLibrary("test1", TestDll.class);
public int say(int value);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
int result = TestDll.INSTANCE.say(16);
System.out.println("测试数据:"+result);
}
}
三、利用vs2017创建dll动态链接库 项目 并创建 test1.cpp文件,及代码如下图:
#include<iostream>
using namespace std;
#define MYLIBAPI extern "C" __declspec( dllexport )
//MYLIBAPI void say(wchar_t* pValue);
MYLIBAPI int say(int pValue);
int say(int pValue) {
int p = 1;
return pValue*pValue;
}
四、生成 .dll 文件 如下图:
五、将生成的test1.dll文件拷贝到 java项目的根目录下,与src目录平级,然后执行 Test1.java文件,就可以在控制台 看到输出结果啦