java: char[] cRead--->dll:jboolean cRead[],怎么样在DLL中更改cRead的值返回到java 程序中。

zhji09 2007-10-12 09:32:00
char [] cRead=new char [100];
然后用函数:ReadIC(cRead)调用,
声明如下: public native static int ReadIC(char []cRead);
dll中: JNIEXPORT jint JNICALL Java_Applet1_ReadIC(JNIEnv * env,jclass,jboolean cRead[])
{
ReadIC(cRead);
}
ReadIC(unsigned char cRead[])
{...}

我最终想要得是在dll中更改这个数组,然后再java程序中能看到更改的结果。
...全文
136 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
江东闲客 2007-10-12
  • 打赏
  • 举报
回复
很早以前写的调用dll:
JNIEXPORT jobject JNICALL JNICALL Java_Applet1_ReadIC
(JNIEnv * env, jclass cls, jstring qrcode, jstring filename) {
LPCTSTR lpQrString = env->GetStringUTFChars(qrcode, 0);
LPCTSTR lpFileName = env->GetStringUTFChars(filename, 0);

...

jclass clsInfo = env->FindClass("cn/com/dhc/sys2/MemInfo");
jmethodID midInfo = env->GetMethodID(clsInfo, "<init>", "()V");
jobject objRetInfo = env->NewObject(clsInfo , midInfo , NULL);

return objRetInfo;
}

楼主可以在objRetInfo对象里得到想要返回的数据

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧