2014-12-22 2 views
0

내 Java 응용 프로그램에서 c dll (mycppdll.dll)을 호출해야합니다.C DLL에 JNA 함수 호출

CFUNCTIONSDLLCALLS int PASCAL SomeFunction(
     char *param1, char *param2, 
     char *param3, char *param4, 
     char *param5, 
     int *param6, 
     int *param7, 
     int *param8); 

는이 같은이 함수를 호출 C 프로그램이 있습니다

char param1[256] = ""; 
char param2[256] = ""; 
char param3[256] = ""; 
char param4[256] = ""; 
char param5[256] = ""; 
int param6; 
int param7; 
int param8[32]; 
ret = SomeFunction(param1,param2,param3,param4,param5, &param6, &param7, &param8[0]); 

을하고 완벽하게 작동 괜찮습니다.

char *에 대한 내 Java 프로그램에서 PointerByReference 및 int *를 IntegerByReference로 사용하고 있습니다. 마지막 매개 변수에 무엇을 사용해야하는지 알지 못합니다.

정수 배열 0 번째 인덱스의 포인터, 포인터의 PointerByReference, 정수 배열 0 번째 인덱스의 포인터, IntByReference를 전달하려고했습니다.

아무도 작동하지 않습니다. 나는 받고있다

"java.lang.UnsatisfiedLinkError: Error looking up function 'SomeFunction': The specified procedure could not be found."

도와주세요. 미리 감사드립니다.

답변

0

SomeFunction은 dll의 일부가 아닙니다 (또는 동일한 인수가 없을 수도 있습니다)