基于Dev C++开发JNI
来源:互联网 发布:淘宝美工全攻略pdf 编辑:程序博客网 时间:2024/06/10 19:56
1.准备一JAVA类
package basesdk.tech.jni;public class TestHello {static {//TestHello2.dll文件需要放到jre/bin目录下,否则报文件找不到.System.loadLibrary("TestHello2");}public static native void hello(String msg);public static void main(String[] args) {hello("Hello,ChenZhian.\nMushroom!!!!");}}
2.利用javah命令生成JNI头文件:命令行下,进入eclipse工程bin目录,运行javah basesdk.tech.jni.TestHello,
回车即可在bin目录下生成文件:basesdk_tech_jni_TestHello.h,内容如下:
/* DO NOT EDIT THIS FILE - it is machine generated */#include <jni.h>/* Header for class basesdk_tech_jni_TestHello */#ifndef _Included_basesdk_tech_jni_TestHello#define _Included_basesdk_tech_jni_TestHello#ifdef __cplusplusextern "C" {#endif/* * Class: basesdk_tech_jni_TestHello * Method: hello * Signature: (Ljava/lang/String;)V */JNIEXPORT void JNICALL Java_basesdk_tech_jni_TestHello_hello (JNIEnv *, jclass, jstring);#ifdef __cplusplus}#endif#endif
3.打开Dev C++ ,新建工程->DLL:工程属性选择“C工程”。把文件basesdk_tech_jni_TestHello.h添加到工程中,最终dllmain.c代码如下:
#include <windows.h>#include <basesdk_tech_jni_TestHello.h>JNIEXPORT void JNICALL Java_basesdk_tech_jni_TestHello_hello(JNIEnv *env, jclass obj, jstring jMsg){ const char *strMsgPtr = (*env)->GetStringUTFChars(env,jMsg,0); MessageBox( 0, strMsgPtr,"Message box from Dev C++ ", 0 ); (*env)->ReleaseStringUTFChars(env, jMsg, strMsgPtr); }
- 基于Dev C++开发JNI
- 基于Dev C++开发JNI
- Windows7下使用Dev-C 编译 JNI
- jni dev
- Android 基于NDK的JNI开发 C调用java和java调用C的进阶教程
- Android 基于NDK的JNI开发 C调用java和java调用C的进阶教程
- 使用elipse和dev-c进行jni编程
- Android For JNI(一)——JNI的概念以及C语言开发工具dev-c++,编写你的第一个C语言程序,使用C启动JAVA程序
- Android For JNI(一)——JNI的概念以及C语言开发工具dev-c++,编写你的第一个C语言程序,使用C启动JAVA程序
- android JNI dev
- jni 开发 c调用java
- 基于JNI的嵌入式手机软件开发实例
- 利用NDK开发基于JNI 的应用程序
- 基于CMake的JNI开发探索
- [原创]Android 基于NDK的JNI开发 C调用java和java调用C的进阶教程
- [原创]Android 基于NDK的JNI开发 C调用java和java调用C的进阶教程
- JNI开发系列之C语言
- 开发环境(mingw,gtk2.0,sdl,dev-c++)
- poj 3277 City Horizon
- 变量初始化
- Android 国内应用市场的汇总
- office之FAQ?
- MPICH
- 基于Dev C++开发JNI
- 分支语句
- 将十六进制转换成二进制或十进制
- mysql双机互备
- 循环
- break和continue
- php注入详解
- 静态数据成员(map容器)一定要记得初始化,否则出现链接错误
- 周末总结_排序_DLL的写法_函数传参传引用