注册
 找回密码
 注册
江西广告网
查看: 563|回复: 0
打印 上一主题 下一主题

浅析开源产品:JACOB

[复制链接]

该用户从未签到

1
跳转到指定楼层
发表于 2009-3-17 08:14:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
JACOB在很长一段时间收到各位JAVA编程人士的重用,许多和小寻一样热爱编程的朋友找到我讨论各种关于JACOB的问题,在这些前来讨论技术的朋友当中,不少朋友是第一次接触,被JACOB语法所迷惑,不知所措,为了让大家少走冤枉路,小寻特意写下这篇文章,由于本人技术浅薄,如有不足,还请批评指正。 JACOB是来自danadler.com公司的开源产品,大家以往都是通过http://danadler.com对该公司的主页做访问,但是你现在打开会看到“Internet Explorer 无法显示该网页” 如果我没记错我们以往使用的jacob_1.9.zip、jacob_1.7.zip都是从http://danadler.com/jacob 处下载的,但目前看来这个网址不可用了。做一下搜索,发现sourceforge.net 有一个叫jacob的项目,想是该公司搬家了吧!通过http://sourceforge.net/projects/jacob-project/ 我们访问到该工程主页,然后下载jacob-project 1.14.3 晕连版本也变了,再也找不到那些老版本了。 源代码下载:jacob-1.14.3_src.zip 代码包下载:jacob-1.14.3.zip API分析:(jacob-1.14.3\docs\api\index.htm) JACOB里的总共有两个包: com.jacob.activeX:JACOB可以通过它调度(Dispatch)activeX 控件 com.jacob.com:JACOB通过它调用系统DLL (activeX是由微软公司推出的用于Internet的技术,以前曾经被称为OLE 和OCX,activeX web插件可以用于各种非HTML的工作,比如,对MicrosoftExcel 或 MicrosoftWord 文件做操作、解析JS,VB脚本、播放FALSH、调用Microsoft MediaPlayer等。) 内部结构: 有一点可以确定的是在JACOB内部,com.jacob.activeX是建立在com.jacob.com之上的。 而com.jacob.com中有一个很基础的类com.jacob.com.JacobObject 其中比较常用的两个类com.jacob.com.Dispatch和com.jacob.com.Variant便是继承自它。(com.jacob.com.Dispatch;里面提供了调度MS windows系统API,比如进程的管理。com.jacob.com.Variant; 里面数据类型的转换的方法,Variant类本身是JACOB的最最基本的数据类,他可以被转换成任何的类,如: 使用toDispatch();可以将Variant转化成Dispatch对象。) com.jacob.com中还有其他的一些类不是建立在JacobObject之上的,如com.jacob.com.ComThread(负责COM线程管理。) com.jacob.com所有的类,包括上面说到的JacobObject、ComThread,都是通过com.jacob.com.LibraryLoader中的loadJacobLibrary()方法: static { LibraryLoader.loadJacobLibrary(); } 调用jacob.dll内的方法,比如:Dispatch.java就通过LibraryLoader和Dispatch.h、Dispatch.cpp建立联系。 从而建立起java到jacob.dll到jni的之间的联系。 出处:http://www.blogjava.net/lusm
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表