<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 117  文章 - 72  trackbacks - 0

    聲明:原創作品(標有[原]字樣)轉載時請注明出處,謝謝。

    常用鏈接

    常用設置
    常用軟件
    常用命令
     

    訂閱

    訂閱

    留言簿(7)

    隨筆分類(130)

    隨筆檔案(123)

    搜索

    •  

    積分與排名

    • 積分 - 156629
    • 排名 - 390

    最新評論

    [標題]:JNI簡單示例
    [時間]:2009-4-5
    [摘要]:Java通過JNI調用DLL。
    [關鍵字]:JNI,DLL,動態庫,Java
    [環境]:JDK6 + VC6
    [作者]:Winty (wintys@gmail.com)

    [正文]:
        Java通過JNI調用本地系統的動態庫(Windows上是dll形式,Unix中是so形式的文件)。JNI的簡單步驟如下:

        Step1:編寫Java類,其中包含要實現的native方法。
    JNITest.java:

    public class JNITest{
        static{
            System.loadLibrary("JNITest");
        }

        public native void showMessageBox();

        public static void main(String[] args){
            JNITest jni = new JNITest();
            jni.showMessageBox();
        }
    }
        編譯JNITest.java,命令:"javac JNITest.java",生成JNITest.class。

        Step2:生成頭文件,命令:"javah JNITest",生成頭文件JNITest.h
    JNITest.h:

    /* DO NOT EDIT THIS FILE - it is machine generated */
    #include <jni.h>
    /* Header for class JNITest */

    #ifndef _Included_JNITest
    #define _Included_JNITest
    #ifdef __cplusplus
    extern "C" {
    #endif
    /*
     * Class:     JNITest
     * Method:    showMessageBox
     * Signature: ()V
     */
    JNIEXPORT void JNICALL Java_JNITest_showMessageBox
      (JNIEnv *, jobject);

    #ifdef __cplusplus
    }
    #endif
    #endif
        Step3:編寫相應的實現文件JNITest.cpp(或.c)。
    JNITest.cpp:

    #include "JNITest.h"
    #include <windows.h>

    JNIEXPORT void JNICALL Java_JNITest_showMessageBox
      (JNIEnv *, jobject){
        ::MessageBox(NULL,"This is a JNI test" , "JNI" , MB_OK);
    }
        Step4:將JNITest.cpp編譯成dll,
        命令(cl 是VC6的編譯命令):
    "cl -If:\jdk\include -If:\jdk\include\win32 -LD JNITest.cpp user32.lib -FeJNITest.dll"
        Step5:運行,命令:"java JNITest"。運行后會彈出一個對話框。
    posted on 2009-04-05 21:33 天堂露珠 閱讀(1612) 評論(1)  編輯  收藏 所屬分類: Java

    FeedBack:
    # re: [原]JNI簡單示例 2009-04-09 14:45 genjuro
    不錯啊,收藏了,以后會用到  回復  更多評論
      
    主站蜘蛛池模板: 亚洲精品黄色视频在线观看免费资源 | 四虎亚洲国产成人久久精品| 亚洲精品和日本精品| 亚洲AV乱码一区二区三区林ゆな| 亚洲fuli在线观看| 高清免费久久午夜精品| 1000部拍拍拍18免费网站| 国产美女精品视频免费观看| 国产亚洲精品xxx| 蜜臀亚洲AV无码精品国产午夜.| 99re免费在线视频| 怡红院亚洲怡红院首页| 亚洲中文字幕一二三四区| 久久久久成人片免费观看蜜芽| 免费国产在线观看| 亚洲日本va在线观看| 日韩免费的视频在线观看香蕉| 免费大香伊蕉在人线国产| 久久亚洲AV成人无码软件| 一级做a爰性色毛片免费| 最新中文字幕免费视频| 亚洲va久久久噜噜噜久久天堂| 韩国亚洲伊人久久综合影院| 免费一级毛片在线播放| 精品国产呦系列在线观看免费| 成人免费无码精品国产电影| 亚洲国产品综合人成综合网站| 亚洲免费在线视频| 亚洲最大的成人网站| 亚洲国产午夜中文字幕精品黄网站 | 91成人免费观看网站| 亚洲激情在线观看| a毛片视频免费观看影院| 亚洲午夜精品久久久久久浪潮| 亚洲日韩看片无码电影| 国拍在线精品视频免费观看| 亚洲国产精品成人精品小说| 久久久久免费看成人影片| 亚洲精品无码专区| 亚洲乱码一区二区三区在线观看| 99久久精品日本一区二区免费|