我在学习使用jacob来写word文档时,总是在构造方法初始化时便报错
public Java2Word() { 
saveOnExit = false; 
word = new ActiveXComponent("Word.Application"); 
word.setProperty("Visible",new Variant(false)); 
documents = word.getProperty("Documents").toDispatch(); 
}
当运行到 documents = word.getProperty("Documents").toDispatch(); 
就报错 Exception in thread "main" com.jacob.com.ComFailException: Invoke Failed: Documents
网上查了很久据说是jacob.jar与jacob.dll跟jdk版本不符合,请问哪里能下到与jdk1.6相匹配的jacob版本,或者有没有其他办法来解决,请指教!

解决方案 »

  1.   

    我用jacob-1.14.1+JDK1.6没问题
    下载地址http://mirror.optus.net/sourceforge/j/ja/jacob-project/
    接分……
      

  2.   

        要升级jacob.dll文件    jacob.jar 1.7的下载地址如下: 
      http://danadler.com/jacob/jacobSrc_17.zip
      
      注意,不要使用它里面提供的jacob.dll.
      
      jacob.dll可从yahoo的jacob讨论组下载,文件名称是:jacob_jre142fix_bin
       
      
      下载完毕所有的文件以后,将jacob.jar解压然后将com和META-INF中的文件分别添加到jdk的lib中的tools.jar中的对应文件夹中(如果不想要这样,通过环境变量设置也可以,但是尝容易出错),而jacob.dll则可以直接放到system32中即可。 
          ps:jacob.jar和jacob.dll的版本要保证一致,否则会报错...
      

  3.   

    用微软Office中间件——SOAOffice,开发Office相关程序的必备工具用Jacob 服务器自动化技术是有风险的,因为微软不建议在服务器端自动化word/excel,出了问题也不提供任何支持,至于有什么风险,看微软是怎么说的
    服务器端 Office 自动化注意事项
    http://support.microsoft.com/default.aspx?scid=kb;zh-cn;Q257757
      

  4.   

    现在出jacob-1.14.3了 可以网上搜一下。
    不过java com office桥仅仅是个桥,具体是要调dll的,所以实例化和操作的时候要小心。
    一个dll的调用不能多个出现在内存中。