我正在使用JNR并试图调用__stdcall函数。我已经尝试过用stdcall()约定加载库:
mTemplateApi = LibraryLoader.create(FPTemplateAPI.class).stdcall().load("FPTemplateAPI");并尝试用@StdCall对方法进行注释。
public interface FPTemplateAP
{
@StdCall
Pointer CreateTemplateImage(@In ByteBuffer aTemplate,
@Out IntByReference aWidth,
@Out IntByReference aHeight,
@In boolean aColor);
}因此,当我试图调用方法时,我会得到以下错误:
Exception in thread "main" java.lang.UnsatisfiedLinkError: The operation completed successfully.
at jnr.ffi.provider.jffi.AsmRuntime.newUnsatisifiedLinkError(AsmRuntime.java:40)发布于 2017-04-01 09:21:36
现在,我创建了另一个dll,它委托给__stdcall dll,但使用__cdecl,它对我非常有效。
https://stackoverflow.com/questions/37968009
复制相似问题