天天看点

jacob使用入门

  • 摘要:jacob官方的解释是JavaCOMBridge,即java和com组件间的桥梁.像我们会用到的jacob.dll文件,这里说说为什么我们用java去操纵office(如:word)要使用com,而不直接使用java去做?首先,我们清楚office是建立在windows平台之上的,本身是一个软件,除了他自己提供的宏似乎没有什么能对他进行直接的操作;在windows平台上为了解决像这样的不同应用软件,通信缺乏通用api问题,推出了com的解决方案;我们使用dll中的一组或多组相
  • jacob官方的解释是Java COM Bridge,即java和com组件间的桥梁.像我们会用到的jacob.dll文件,这里说说为什么我们用java去操纵office(如:word)要使用com,而不直接使用java去做? 

    首先,我们清楚office是建立在windows平台之上的,本身是一个软件,除了 

    他自己提供的宏似乎没有什么能对他进行直接的操作;在windows平台上为了 

    解决像这样的不同应用软件,通信缺乏通用api问题,推出了com的解决方案; 

    我们使用dll中的一组或多组相关的函数存取组件数据,总的合称为接口 

    具体到每个细节的实现称为方法;如果我们要调用接口里的方法,唯一的途径就是 

    调用指向接口的指针; 

    所以总的来说使用就是dll完成api的转换; 

    jacob.jar是我们要用的包 

    jacob.dll就是我前面说的com组件 

    包里的jacob.dll放到c:/windows/system32下 

    值得注意的是,不同的版本的系统使用不同的dll文件 

    所以如果你编译成功,但运行失败一般是dll文件问题 

    遇到这种情况,可以到 

    http://downloads.sourceforge.net/jacob-project/jacob_1.9.zip?modtime=1109437002&;big_mirror=0 

    下载其他的版本的 dll 文件。 

    1、如果出现下面的错误 

    com.jacob.com.ComFailException: A COM exception has been encountered: 

    At Invoke of: Version 

    Description: An unknown COM error has occured. 

    表示dll的版本不对,换成最新版本即可。 

    2、如果出现下面的错误 

    no jacob in java.library.path 

    java.lang.UnsatisfiedLinkError: no jacob in java.library.path 

    表示把dll放到path下即可,设置path或是放到window/system32下 

    jacob_1.9.1.zip (255.9 KB) 下载次数: 306

  • 以上是jacob使用入门的内容