Eclipse Java 32Bit JDK를 사용합니다. 32 비트 DLL을 가져 오기 위해 노력하고 있습니다.이 DLL에 대한 설명서는 거의 없습니다. com.sun.jna
을 사용하고 있습니다. 설명서에 매개 변수없이 InitImagerIPC
메서드를 호출하라는 메시지가 표시됩니다. 나는 오류가 발생하지 DLL을 가져올 때DLL 가져 오기는 UnsatisfiedLinkError를 발생 시키지만 DLL은로드됩니다.
public interface ImagerIPC extends com.sun.jna.win32.StdCallLibrary{
HRESULT InitImagerIPC();
}
:
이 example 같이 내가 인터페이스를 만들었습니다.
ImagerIPC lib = (ImagerIPC) Native.loadLibrary ("ImagerIPC", ImagerIPC.class);
내 DLL 이름을 잘못 입력하면 UnsatisfiedLinkError
이 표시됩니다. 그래서 올바르게로드 된 것 같아요? 내가
lib.InitImagerIPC();
를 호출 할 때
는하지만 난 UnsatisfiedLinkError
를 얻을. :(실수는 어디
을 BTW : DLL을 내보내기 뷰어가 원하는 방법에 대해이 정보를 꺼내서 :.
[email protected] 0x10001fc0 0x00001fc0 45 (0x2d)
ImagerIPC.dll J:\<my Path>\ImagerIPC.dll Exported Function
나는 이름에 대해 확실하지 오전 나는 또한 _
를 추가해야합니까?
전체 예외 메시지를 포함하여 스택 추적을 제공하십시오. –
'스레드 "main"의 예외 java.lang.UnsatisfiedLinkError : '_InitImagerIPC'함수를 찾는 동안 오류가 발생했습니다 : 오류가 발생했습니다. \t (com.sun.jna.Function) (Function.java:179) com.sun.jna.NativeLibrary.getFunction에서 \t (NativeLibrary.java:344) com.sun.jna.NativeLibrary.getFunction에서 \t (NativeLibrary.java:324) \t에서 COM .sun.jna.Library $ Handler.invoke (Library.java:203) \t $ Proxy0._InitImagerIPC (알 수없는 출처) \t at main.main (main.java:13) ' –
Ciprian