Java中Jni调用DLL文件试验

下面是小编整理的Java中Jni调用DLL文件试验内容,希望可以为您带来帮助!更多内容请关注应届毕业生考试网!

所有文件均在E:\路径下。

安装jdk1.6.0_07

安装了VC++6.0

第一步,

HelloWorld.java

第二步,

E:\>javac HelloWorld.java

得到

HelloWorld.class

第三步,

E:\>javah HelloWorld

得到

HelloWorld.h

第四步,

编写一个C文件

HelloWorldImp.c

第五步,

使用cl编译

第六步,

成功

后来继续试验,目标是Java调用打印机的tsclib.dll,方法是dll调用dll:建立中间dll,兼顾Jni方法,调用tsclib.dll实现动作。(提前告诉您结果:我失败了)

------------------------下面有源码:

所有文件均在E:\路径下。

安装jdk1.6.0_07

安装了VC++6.0

第一步,

HelloWorld.java

/**

* @author pinkfloyd

*

*/

public class HelloWorld {

/**

* @param args

*/

public static void main(String[] args) {

// TODO 自动生成方法存根

new HelloWorld().displayHelloWorld();

}

public native void displayHelloWorld();

static{

System.loadLibrary("hello");

}

}

第二步,

E:\>javac HelloWorld.java

得到

HelloWorld.class

第三步,

E:\>javah HelloWorld

得到

HelloWorld.h

/* DO NOT EDIT THIS FILE - it is machine generated */

#include

/* 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

第四步,

编写一个C文件

HelloWorldImp.c

#include "jni.h"

#include "HelloWorld.h"

JNIEXPORT void JNICALL Java_HelloWorld_displayHelloWorld(JNIEnv *env, jobject obj) {

printf("Hello world!\n");

return;

}

java jni dll路径_Java中Jni调用DLL文件试验相关推荐

  1. java获取子路径_Java中路径的获取

    1.Java中获取路径的方法:  Class_Name.class .getResource("")        //   Class_Name.class .getResour ...

  2. java 输出文件到mac路径_Java 中几种获取文件路径的方式

    原标题:Java 中几种获取文件路径的方式 1. 前言 Java开发中我们经常要获取文件的路径,比如读取配置文件等等.今天我们就关于文件的路径和如何读取文件简单地探讨一下. 2. 文件的路径 文件的路 ...

  3. java调取对方接口_java中如何调用对方接口

    调用对方http接口步骤:URL url = new URL(path); 1.打开和url之间的连接HttpURLConnection conn = (HttpURLConnection) url. ...

  4. java第三方接口对接_Java中处理调用第三方接口(post/get),该如何处理,返回的数据如何处理...

    条件:1.请求URL:http://ip:port/yypt/*.jsonRequest 2.接口采用http post协议.Content-Type为application/json 调用流程: 第 ...

  5. java引入外部字体_Java中如何自定义字体文件(引用外部字体)?-字体文件

    图源来自网络 有时候我们在程序中,会使用到Java字体,但不是所有的字体系统中都会有,我们就可能会使用外部自定义字体,这样在程序迁移部署中就会少些工作,最近在一个项目中使用到了自定义字体文件,理顺了, ...

  6. Delphi环境中编写调用DLL的方法和技巧

    Delphi环境中编写调用DLL的方法和技巧 第一章 为什么要使用动态链接库(DLL) top 提起DLL您一定不会陌生,在Windows中有着大量的以DLL为后缀的文件,它们是保证Windows正常 ...

  7. Delphi中动态调用DLL的方法

    Delphi中动态调用dll的方法如下: function CallFunc(dllname, funcname: string; const param: array of const): DWOR ...

  8. magento2 邮件模板中直接调用 block文件

    magento2 邮件模板中直接调用 block文件 有些邮件模板我们想直接写在phtml里面 好想法 示例 {{block class="Magento\Framework\View\El ...

  9. java调C接口_java通过jni调用C程序接口

    打算写一个FbSetApp去操作framebuffer的设备文件,以便能够去设置FB的一些参数. 新建两个class FbParams.java: package org.trident.fbset; ...

最新文章

  1. c语言实现字符串中提取数字,遇到非字符串则换行
  2. R语言xgboost包:使用xgboost算法实现随机森林(random forest)模型
  3. MyBatis中提示:You have an error in your SQL syntax; check the manual that corresponds to your MySQL ser
  4. 06_特征选择,特征选择的原因,sklearn特征选择API
  5. JS实现各种复制到剪贴板
  6. 超级干货 :一文读懂社交网络分析(附应用、前沿、学习资源)
  7. 一款免费好用的英文润色软件(1Checker没错,这是免费的)
  8. Yasm的作用及NASM详解
  9. 网页中常说的‘焦点’是什么意思
  10. [其他][转载]ACM知识点分类
  11. 游戏服务器被攻击了怎么办?
  12. 语言学特征进行可读性评估(Readability Assessment)
  13. 王者荣耀刷金币辅助(安卓调试桥与python的联合使用)
  14. uniapp中H5网页和打包app分别生成二维码
  15. java让线程空转_详解Java编程中对线程的中断处理
  16. Android okHttp封装库(2) -- okhttp-OkGo
  17. 《系统化思维导论》读书心得
  18. border属性 php,使用CSS的border属性构建变形边框的方法总结
  19. 赠书 !豆瓣 9 分以上的书籍,成为 Java 大佬必看!
  20. 3dmax第二次安装遇到的问题及解决方案

热门文章

  1. python发明家_Python版多图表范例
  2. 京东数据库泄露事件分析
  3. 试商法 素数探求 c语言,连续合数探求
  4. 八卦:大量放送Gmail,Orkut,Wallop的邀请函
  5. B/S中的三层架构和MVC设计模型
  6. Redis缓存击穿,穿透,雪崩等问题
  7. 英文论文写作相关实用网站与工具整理
  8. Matplotlib系列(七):动画
  9. AppRTC(WebRTC)服务器搭建
  10. 从CSDN到个人博客空间