文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院程序开发Java在Java中使用VC++组件
精品推荐
特别推荐
·实例讲解:Java中的SOAP技术
·Java语言出现的背景 影响及前景
·Java精华积累:初学者都应该搞懂的问题
·Java多媒体框架设计自动播放机实例详解
·如何有效防止Java程序源码被人偷窥?
·Cell插件在J2EE系统中的应用
·初学者想学Hibernate,初级基础教程
·Java语言实现支持视频点播的WEB服务器
·关于Java编程的中文问题的几条分析原则
·确保J2ME无线移动商业应用程序的安全性
·Java开源技术:Eclipse的使用技巧详解
·新手入门:Java中的修饰词使用方法总结
·JAVA开发者应该去的20个英文网站
·使用JDBC创建数据库访问程序
·JDK的命令详解
·Java学习从入门到精通(附FAQ)
·Tomcat性能调整
·JSF:Java中面向Web开发的生旦净末丑
·对Java语言入门初学者的一些建议
·Java技术的新方向
热点TOP10
·Java图形用户界面设计
·在桌面应用中使用JAVA DB
·3D编程指南第一部分:快速进入移动JAVA 3D编程世界
·用Java编写的记事本程序(1)
·java swing的拖放例子
·用Java编写的记事本程序(3)
·JasperReport经验谈
·图解JBuilderX安装与实践
·用java编写的小游戏源代码分析
·struts+spring+ibatis轻量级J2EE开发
·单源点最短路径Dijkstra算法的JAVA实现
·实例讲解:Java中的SOAP技术
·初学者想学Hibernate,初级基础教程
·中国农历二百年算法及年历程序分析一
·用Java实现SMTP服务器
·用Java编写的记事本程序(2)
·Java语言出现的背景 影响及前景
·Java Applet 入门第三天
·Java学习从入门到精通(附FAQ)
·通过JCA实现企业级应用程序的“即插即用”

在Java中使用VC++组件

日期:2007年5月2日 作者: 查看:[大字体 中字体 小字体]


  介绍
    JNI是我喜欢的java编程框架;它让你你自由的使用本地编写的代码。例如,如果你想要在你的java程序中使用Windows API(不如说dll),那么你就要用JNI。

    Java最受欢迎的特性就是它的平台无关性。但是,有时候这一特性也会使你将Java程序与本地平台整合变得困难。

    例如,在我们的工程中,将消息添加到数据库之前,我们使用MSM Q(Microsoft Messaging Que)的队列机制来维护消息(为了避免消息丢失)。Microsoft提供了MSM Q API,它是Windows的API。但是我们的程序使用Java来处理消息的,并且Java不能直接访问这样的API(dll)。因此我们决定做一个中间DLL,它能够作为Java和VC++之间的桥(我们用过的技术Java Native  Inteface或JNI)。

   在进一步介绍之前,你应该知道或熟悉的下面一些知识:

    1.本地方法:本地方法是一个用在.Java文件中声明的方法,并且这个声明将在你的本地代码(对于Windows来说是在VC++中)中定义。

   2. 静态块:Java中的静态块是指在任何其他事情发生前就能够被执行的代码块。

那么让我们开始吧。首先,用本地方法声明来写你的Java程序。下面代码来自源代码中的例子:

public class JNITest
{
     static
       {
        System.loadLibrary("JNITest");  // Loading dll in memory
       }

    native void showMessage( String str);  // Declaring native method
    public JNITest()
    {
        System.out.println( "In the constructor of the Java program" );
    }

    public static void main( String s[] )
    {
         JNITest JNT = new JNITest();
         JNT.showMessage("Passing string from Java");
    }
}

 在上面的代码中我们声明了showMessage方法,它是本地的方法,然后调用它,w.r.t  类JNITest的对象。

执行下面的步骤:

 1.编译代码生成.class文件

2.在JDK文件夹中找到javah命令

3.在Dos命令行下执行javah -jni JNITest

执行完上面的步骤将产生JNITest .h文件。这个.h文件包含了在Java代码中声明的本地方法的VC++中的函数名。

创建JNI DLL

我已经完成了一半了。

    现在,在Visual Studio(和其他任何win32 IDE)创建一个简单的dll工程然后添加上面的.h文件到工程中。

    为了获得包含的文件jni.h,添加JRE\INCLUDE文件夹的路径到你的includes中。


[1] [2] 下一页 




上一篇:单源点最短路径Dijkstra算法的JAVA实现

下一篇:实例:创建SWT项目的原生库导入问题

在Java中使用VC++组件 相关文章:
·GHOST使用方法(图解)
·Vista系统使用技巧总结
·为什么iexplore.exe在打开网页时CPU使用会100%?
·QQ空间导航代码最新版使用方法
·DataTable控件的使用
·推荐:漂亮的手机上使用的墙纸图片分享下载
·腾讯QQ号码使用完全指南
·DENX U-Boot及Linux使用手册
·QQ空间透明flash代码使用说明
·电脑使用一段时间后会变慢原因解析
在Java中使用VC++组件 相关软件:
·黑客视频教程 VMware虚拟机的安装和使用
·黑客视频教程-灰鸽子远控使用教程
·FLASH 8中文使用手册
·使用GPMC随心所欲管理组策略
·Adobe Photoshop CS 2 简体中文使用指南
·Auto CAD R14高级使用教程
·Thinking In Java 英文版
·Microsoft Visio 2000 完全使用手册
·Linux 系统命令及其使用详解(大全)
·黑客视频教程-网吧代理服务器使用灰鸽子端口映射方法

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:viphot