- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java调用c语言生成的dll(JavacallstheDLLgeneratedbytheclanguage)
java调用c++语言生成的dll(Java calls the DLL generated by the c++ language)
Java how to call c++ to write the DLL (Dynamic Link Library)
Simple to use JNI
As one of the most simple HelloWorld program to introduce the most basic use of JNI:
1) the first to have a HelloWorld.java.
This is the main file, which includes the local method Java statement, a main function, and a static code, used to import needed dynamic link library (windows.Dll).
The following code:
//HelloWorld.java
Class {HelloWorld
Public native void (displayHelloWorld); / / note that the keyword native, which shows this method is realized by the local method.
Static {// static code into the hello.dll section.
System.loadLibrary (hello);
}
Public static void main (String[] args) {// calls the displayHelloWorld method of this class (of course, the method is actually using the C language)
New (HelloWorld) (.DisplayHelloWorld);
}
}
2) compile HelloWorld.java.
Use statement:,
Javac HelloWorld.java
3) use the javah command to generate a.H file.
Use statement:,
Javah HelloWorld
This is the realization of the displayHelloWorld (c) file method header file. The file name for the HelloWorld.h Code:
DO NOT EDIT THIS / FILE - it is machine generated.
#include jni.h
Header for class HelloWorld / * * /
#ifndef _Included_HelloWorld
#define _Included_HelloWorld
#ifdef __cplusplus
Extern {C
#endif
*
* Class: HelloWorld
* Method: displayHelloWorld
* Signature: (V)
* /
JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld
(JNIEnv * jobject);
#ifdef __cplusplus
}
#endif
#endif
As you can see, this file is the main method declaration methods need to be implemented in the C file inside the. This statement and the java file HelloWorld.java has a little difference, the original method with no parameters, but now with two parameters.
The two is a local method to some parameters.
The first parameter is JNIEnv*, which is used to connect to the local object parameters and methods in your Java applications. The second parameter is a jo
您可能关注的文档
- 10个坏习惯引发痘痘反复发作(10 bad habits lead to repeated attacks of acne).doc
- 13、室间质量评价(13 、 room quality evaluation).doc
- 13消渴小便不利淋病脉证(13 diabetes, dysuria, gonorrhea, pulse syndrome).doc
- 13过去分词(13 past participle).doc
- 14《黄山奇石》教学设计之三(14 teaching design of Mount Huangshan strange stone three).doc
- 140斤到85斤经本人活体实验最有效减肥方法(140 pounds to 85 pounds, through my living experiments, the most effective way to lose weight).doc
- 14 真题(14.).doc
- 14年国考申论真题(14 years of national test application on the exam).doc
- 14福师《教育统计与测量评价》在线作业一(14 Fu division education statistics and measurement evaluation online homework).doc
- 14福师《教育统计与测量评价》在线作业二(14 Fu division education statistics and measurement evaluation online homework two).doc
- java中数据类型转换(Data type conversion in Java).doc
- java长连接的实现(Implementation of Java long connection).doc
- jdk版本的区别(The difference between the JDK versions).doc
- jpa调用存储过程(JPA calls stored procedures).doc
- json数据的详细解析方法(A detailed parsing method for JSON data).doc
- jdk1.4 1.5 1.6 1.7的区别(The difference between jdk1.4 1.5, 1.6, and 1.7).doc
- jsp中cookie的用法(The use of cookie in JSP).doc
- js中json使用全解(JSON uses full solution in JS).doc
- jpslx_jy0401(jpslx_jy0401).doc
- js里的array,isfinite,number 总结(JS里的阵列,有限,数量总结).doc
文档评论(0)