您的位置:程序门 -> java -> j2se / 基础类



请教jni问题,关于vc写的dll的调用。


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


请教jni问题,关于vc写的dll的调用。
发表于:2007-03-02 09:28:21 楼主
看了网上的一些文章,关于java调用dll是使用jni。
有以下几个步骤:
1.写一个java类;
2.使用javac   -d;
3.使用javah   -jni;
4.用vc编译;
5.可以用java调用了。

现在我是做到第4步不会做下去
看了很多文章,这篇写的比较好的:
4)   添加源文件winmsgdll.cpp,内容如下:
#include   "windows.h "
#include   "edu_netcom_jni_winmsgbox.h "
/*
  *   class:           edu_netcom_jni_winmsgbox
  *   method:         showmsgbox
  *   signature:   (ljava/lang/string;)v
  */
jniexport   void   jnicall   java_edu_netcom_jni_winmsgbox_showmsgbox
(jnienv   *   env,   jobject   obj,   jstring   str){
const   char   *msg;
msg   =   env-> getstringutfchars(str,0);
messagebox(null,msg, "java   invoke ",mb_ok);
env-> releasestringutfchars(str,msg);
}

我的主要问题是函数内(例子上是java_edu_netcom_jni_winmsgbox_showmsgbox)的代码不知道如何编写。

一般来说是写会原来dll的执行代码,我也自己编过程序可以行得通。
但是我现在工作用的dll没有代码,不知道如何编写。

曾经问过一些同事,有2个高手都说是在里面写原来vc调用那个dll的代码就可以了。但是我还没有成功做出来。

请教各位高手,能够给我指点一下吗?谢谢!!!


快速检索

最新资讯
热门点击