작은 응용 프로그램에 Java를 사용하고 있습니다. 기존 MFC 프로젝트를 다시 작성합니다. JNI를 사용하여 Java에서 액세스 할 수있게하려면 기존 DLL이 필요합니다. 이 자바 물건은 모두 새로운 것이므로 다른 포럼 게시물을 읽었을 때 약간의 문제가 있으며 밀도가 높습니다. 기존의 dll에는 다음과 같은 함수가 있습니다.Java에서 C++ dll 호출
extern "C" __declspec(dllexport) bool Create()
{
return TRUE;
}
멍청한 질문 시간. Java에 의해 호출되도록 올바르게 설정하려면 어떻게해야합니까?
JNIEXPORT jboolean JNICALL Create()
{
return TRUE;
}
내가 jni.h 모든 것이 잘 컴파일을 포함하고 있습니다 :
나는이 시도. 그러나 Java에서 호출 할 때 UnsatisfiedLinkError가 발생합니다. Java를 다음과 같이 사용하여 호출합니다.public static native boolean CreateSession();
System.load("D:\\JavaCallTest.dll");
Create();
친절하게도 적절한 방향으로 나를 밀어 낼 수 있습니까? 진심으로 감사드립니다.
감사합니다,
닉
Sun의 예를 보았습니까? http://java.sun.com/developer/onlineTraining/Programming/JDCBook/jniexamp.html – Etienne
또는 JNA에서로드 할 수있는 C DLL이 있으므로 JNI 대신 JNA를 사용할 수 있습니다. – ecle
던져진 예외를 게시하십시오 ... – quaylar