获取java.lang.UnsatifiedLinkError:查找函数时出错';添加#u编号';:找不到指定的过程
我使用JNA从java调用.Net方法,它可以加载.dll文件,但不能调用该方法。而且没有拼写错误,加载.dll文件也很好。我收到错误:线程“main”java.lang.UnsatifiedLinkError中出现异常:查找函数“Add_Numbers”时出错:找不到指定的过程。 公共函数Add_number(ByVal no1为整数,ByVal no2为整数 整数)作为整数 是一个来自.Net(.dll)的方法。有人能帮我吗 这是java代码获取java.lang.UnsatifiedLinkError:查找函数时出错';添加#u编号';:找不到指定的过程,java,jna,Java,Jna,我使用JNA从java调用.Net方法,它可以加载.dll文件,但不能调用该方法。而且没有拼写错误,加载.dll文件也很好。我收到错误:线程“main”java.lang.UnsatifiedLinkError中出现异常:查找函数“Add_Numbers”时出错:找不到指定的过程。 公共函数Add_number(ByVal no1为整数,ByVal no2为整数 整数)作为整数 是一个来自.Net(.dll)的方法。有人能帮我吗 这是java代码 public interface Image_C
public interface Image_Capture extends Library {
Image_Capture INSTANCE = (Image_Capture) Native.loadLibrary("D:\\Test_DLL", Image_Capture.class);
int Add_Numbers(int a,int b);
}
public static void main(String[] args) throws Exception {
Image_Capture sdll = Image_Capture.INSTANCE;
int result=sdll.Add_Numbers(10,20);
System.out.println(result);
}
这是.Net中的代码。我不知道总数
Public Function Add_Numbers(ByVal no1 As Integer, ByVal no2 As Integer) As Integer
发布这两个文件的源代码---Java和.NET源文件@shekhar suman我已经添加了java代码,请在DLL上再次检查它,以查看您正在查找的导出函数的实际名称。正如technomage所说,使用Dependency Walker,您尝试调用的函数的名称更可能不是“Add_Numbers”,JNA只能将C函数作为DLL的导出调用,它不能调用.NET方法。