Java 查找时出错:'';找不到指定的过程

Java 查找时出错:'';找不到指定的过程,java,c#,jna,Java,C#,Jna,我试图在java中使用C#dll函数。我得到的错误是找不到函数,但是找到了dll并成功加载 当我在搜索一个问题时,我发现有时编译器会将符号和整个函数名弄乱成类似这样的东西myFunction@32'而不是'myFunction'。不幸的是,这不是我的问题 public interface IConectorT extends Library { boolean DeleteCustomObjectRecord(String company, String username, String pas

我试图在java中使用C#dll函数。我得到的错误是找不到函数,但是找到了dll并成功加载

当我在搜索一个问题时,我发现有时编译器会将符号和整个函数名弄乱成类似这样的东西myFunction@32'而不是'myFunction'。不幸的是,这不是我的问题

public interface IConectorT extends Library {
boolean DeleteCustomObjectRecord(String company, String username, String password, int cdoId, 
String cdoName, int[] cdoRecordIds);


IConectorT INSTANCE = (IConectorT) Native.loadLibrary("C:\\Windows\\System32\\Eloqua API", 
IConectorT.class, new HashMap() {
    {
        put("DeleteCustomObjectRecord","_DeleteCustomObjectRecord@32");
    }
});
}
我试过@64、@32、@16等,也试过在前缀中加上“u”。 我也尝试过绝对路径加“.dll”和不加“.dll”,相对路径相同。(但装载不是问题)

我尝试了一个小更新,现在它返回以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: 
Main.Main.DeleteCustomObjectRecord(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILjava
/lang/String;[I)Z
at Main.Main.DeleteCustomObjectRecord(Native Method)
at Main.Main.main(Main.java:15)

据我所知,JNA仅用于本机库。在从Java访问C#库之前,您需要为它编写一个C/C++包装器


您使用的是C/C++dll吗?C#因此,也许您是对的,您能告诉我怎么做吗?谢谢。退房并离开。您还可以使用独立的命令行C#程序,并使用
ProcessBuilder
或HTTP服务器访问它,就像Michael Barker@在我第一次回复中链接的帖子中建议的那样。