com.jacob.com.ComFailException: Can't co-create object
我用 jacob-1.14.3-X64 (jdk 64 位)在 windows server 2003 x64 位机器上调用第三方 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:101)
at com.jacob.activeX.ActiveXComponent.<init>(ActiveXComponent.java:58)
at com.dheaven.mip.protocol.dps.office.WindowsFile$1.call(WindowsFile.java:118)
at com.dheaven.mip.protocol.dps.office.WindowsFile$1.call(WindowsFile.java:1)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
但是,我用 jacob-1.14.3-X86(jdk32 位)在 windows server 2003 x64 位机器上调用同样的 dll,却没报错
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我用 jacob 调用.ocx 一直报
一直报这个错,不知道是怎么回事。
这个参数我是在注册表里找的 ProgID,有知道是怎么回事的吗?
jacob-1.14.3-X64.dll 这个是 64 位的 DLL,在 64 位的 SDK 时,会去选择用这一个动态库去加载我们的 COM 或者 ActiveX 组件,然而我们的 COM 组件确是 32 位的。64 位与 32 位不可以交叉使用。要么统一是 64 位,要么统一是 32 位。所以,导致了创建失败的问题,希望对你有帮助。