【问题标题】:JACOB and 64bit JVM-does it work?JACOB 和 64 位 JVM - 可以吗?
【发布时间】:2017-04-24 15:07:58
【问题描述】:

多年来,我们一直使用 JACOB 使用 32 位 JVM 生成 PDF,使用 Jacob.jar 和 Jacob.dll 没有问题。 由于各种原因,我们现在需要升级到 64 位 JVM。我已经下载了最新的 64 位 Jacob.jar 和 dll 并安装并添加到路径中,但是当我运行时,我得到:

com.jacob.com.ComFailException: Can't co-create object
at com.jacob.com.Dispatch.createInstanceNative(Native Method)
at com.jacob.com.Dispatch.<init>(Dispatch.java:160)
at com.jacob.activeX.ActiveXComponent.<init>(ActiveXComponent.java:54)
at ...

我正在使用 jre 1.8.0_131,Jacob.jar 的清单是:-

Manifest-Version: 1.0 
Ant-Version: Apache Ant 1.9.2 
Created-By: 1.7.0_79-b15 (Oracle Corporation) 
Built-By: joe
Name: com.jacob 
Specification-Title: JACOB : Java COM Bridge 
Specification-Vendor: http://jacob-project.sourceforge.net 
Implementation-Title: JACOB : Java COM Bridge Java libraries 
Implementation-Version: 1.18 build 01 on 05-August-2015 05:01:11 
Trusted-Library: true 
Application-Name: Java-Windows Bridge 
Permissions: all-permissions 
Codebase: *

Jacob dll 是 Jacob-1.18-x64.dll

有没有人在使用 64 位 JVM 的 JACOB 上取得成功。专门用于制作 PDF? 任何建议都会有所帮助,因为我已经为此奋斗了一段时间! 我读到的其他堆栈溢出线程:- Can't co-create object

非常感谢

【问题讨论】:

  • 我们在 32 位和 64 位环境中使用 jacob。然而,结合小程序而不是用于 PDF 生成,而是用于 Outlook 访问。 32Bit 版本您使用的是哪个 java 版本?你的pdf生成库也是64位的?

标签: java dll jvm jacob


【解决方案1】:

我让它与 java 1.8 和 Jacob-1.19-x64.dll 一起工作,如下所示:

  • 将dll复制到:

    1. C:\Windows\SysWOW64\

    2. C:\Program Files\Java\jdk1.8.0_141\lib

    3. C:\Program Files\Java\jdk1.8.0_141\bin

  • 在注册表中添加注册表项 DllSurrogate,在键 HKCRWow6432NodeAppID{E2779C61-F87E-4038-98A0-1D9E71334706} 中没有值。

  • 在 HKLMSoftwareClassesAppID 中创建一个新密钥,其 GUID 为 {E2779C61-F87E-4038-98A0-1D9E71334706},不带任何值。


来源:

【讨论】:

    猜你喜欢
    • 2011-12-12
    • 2012-09-19
    • 2011-12-25
    • 2013-09-16
    • 2012-01-12
    • 2013-04-05
    • 2011-09-11
    • 2011-06-26
    • 2017-08-26
    相关资源
    最近更新 更多