JAVA(JNA/JNative/JNI等)怎样调用DLL中 返回指针的函数(指针函数),得到其值(其指针对应的值)?
以下给出其它语言的调用示例:
//////////////////////////////////////////////////////////////////////////////////////////
vb中的调用方式:
Private Declare Function functionA Lib "mydll.dll" (ByVal a As Long, ByVal b As Long, ByVal c As String, d As Long) As Long
jieguo = " "
no1 = functionA(0,0,strA,0) '返回识别结果字符的指针
no2 = lstrcpy(jieguo, no1) 'VB中用lstrcpy就可以从指针得到字符了,当然你也可以选择其他的方式
我要的就是 jiegou
///////////////////////////////////////////////////////////////////////////////////////////
vc中的调用:
char* WINAPI functionA(...)
Def_API(tag_functionA, functionA, "mydll.dll")
char* ret = functionA(...);
我要的就是 ret字符串
///////////////////////////////////////////////////////////////////////////////////////////
那JAVA中怎样来调用呢,DLL我是没办法更改的!试过用JNative、JNA调用,都没有调用指针函数的示例.自己用C写一个DLL间接调用估计可以,但C写DLL不会...