网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.有关手机中文问题传输的解决办法.
.用java实现DB2的自定义函数.
.GetExtensionName 方法.
.Java Applet编程之声音和图像的协.
.初学者如何开发出一个高质量的J2.
.Good Java Style: Part 1.
.学习使用CORBA编写访问服务器对象.
.test 方法.
.JDBC 高级数据类型的应用.
.重新“掷”出违例.
.Java设计模式之装饰模式(1).
.Spring 编程入门十大问题解答.
.Hibernate对多表关联查询.
.getUTCHours 方法.
.用Java动态代理来创建包装器.
.自动转向的javabean源码.
.《java与模式》----创建模式系列.
.Eclipse使用入门.
.头文件生成器-javah.exe.
.JavaMail快速入门(上).

JACOB配置方法及两个常见错误解决

发表日期:2008-1-5



  通过Jacob可以很方便的通过编程操作Word等MS组件,以前我也写过一篇关于如何使用Jacob进行将word文档转为Html和其他格式的文档(http://blog.csdn.net/guoxiaoshou2000/archive/2004/12/07/208024.ASPx);而且附上了源码。
  
  但是最近有些朋友跟我联系,说无法正确执行我提供的代码,提示的错误如下:
  
  com.jacob.com.ComFailException: Invoke Failed: Documents at com.jacob.com.Dispatch.invokev(Native Method) at
  
  com.jacob.activeX.ActiveXComponent.getProperty(ActiveXComponent.Java) at wordtohtml.change(wordtohtml.java:62)
  
  at wordtohtml.main(wordtohtml.java:104)
  
  com.jacob.com.ComFailException: Invoke Failed: Quit
  
  at com.jacob.com.Dispatch.invokev(Native Method)
  
  at com.jacob.activeX.ActiveXComponent.invoke(ActiveXComponent.java) at wordtohtml.change(wordtohtml.java:77) at wordtohtml.main(wordtohtml.java:104)
  
  Exception in thread "main"
  
  这个错误以前我也碰到过,在这里跟将我的解决方法说明一下。
  
  造成这种错误的一种原因是jdk与你的jacob版本不相符合,假如使用jacob1.6而使用jdk1.4或以上版本,那么肯定会出这种错误,解决方法可以升级你的jacob.dll版本——这个在yahoo的jacob讨论组上面可以有下载文件名称是:jacob_jre142fix_bin.
  
  另外注重的是,这样升级后仍然可能出错,这样的话,建议采用下面的配置方法。
  
  jdk1.3.1_15 + jacob.jar 1.7 + jacob.dll的jacob_jre142fix_bin版本
  
  其中jdk可以直接从sun的网站下载,下载链接为:
  
  http://192.18.97.50/ECom/EComTicketServlet/BEGINBB924C3A202206BE2FD20BEBE583F482/-2147483648/829060395/1/557666/557654/829060395/2ts+/westCoastFSEND/j2sdk-1.3.1_15-oth-JPR/j2sdk-1.3.1_15-oth-JPR:7/j2sdk-1_3_1_15-windows-i586.exe
  
  注重,下载完毕以后是一个文件名称很长的文件,将其改名为jdk1.3.1_15.exe即可。
  
  jacob.jar 1.7的下载地址如下:
  
  http://danadler.com/jacob/jacobSrc_17.zip
  
  注重,不要使用它里面提供的jacob.dll.
  
  jacob.dll可从yahoo的jacob讨论组下载(呵呵,给它做广告了)。
  
  下载完毕所有的文件以后,将jacob.jar解压然后将com和META-INF中的文件分别添加到jdk的lib中的tools.jar中的对应文件夹中(假如不想要这样,通过环境变量设置也可以,但是尝轻易出错),而jacob.dll则可以直接放到system32中即可。
  
  这里还要注重一点,假如你的jacob.jar和jacob.dll的版本不一致的话,很可能出现下面的错误:
  
  Exception in thread "main" java.lang.UnsatisfiedLinkError: no jacob in java.libr
  
  ary.path
  
  at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1344)
  
  at java.lang.Runtime.loadLibrary0(Runtime.java:744)
  
  at java.lang.System.loadLibrary(System.java:815)
  
  at com.jacob.com.Dispatch.<;clinit>(Dispatch.java)
  
  at openword.open(openword.java:12)
  
  at openword.main(openword.java:48)
  
  或者:
  
  Exception in thread "main" java.lang.UnsatisfiedLinkError: doCoInitialize at com.jacob.com.ComThread.doCoInitialize(Native Method)
  
  at com.jacob.com.ComThread.Init(ComThread.java)
  
  at com.jacob.com.ComThread.InitMTA(ComThread.java)
  
  at com.jacob.com.ROT.addObject(ROT.java)
  
  at com.jacob.com.JacobObject.<;init>(JacobObject.java)
  
  at com.jacob.com.Dispatch.<;init>(Dispatch.java)
  
  at com.jacob.activeX.ActiveXComponent.<;init>(ActiveXComponent.java)
  
  at openword.open(openword.java:12)
  
  at openword.main(openword.java:48)
上一篇:Log4J 日志管理系统使用心得体会 人气:1268
下一篇:对于Java消息服务中常见问题的解答 人气:597
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐