使用jacob错误 java.lang.IllegalArgumentException: Can't pass in null Dispatch object

调用jacob打印word时,有以下错误
java.lang.IllegalArgumentException: Can't pass in null Dispatch object
        at com.jacob.com.Dispatch.throwIfUnattachedDispatch(Dispatch.java:283)
        at com.jacob.com.Dispatch.callN(Dispatch.java:452)
        at com.xquant.platform.component.web.trade.documentprinthandler.service.
CallPrinter.printWord(CallPrinter.java:59) 
这个问题查了很久  本地是可以的 但是将代码放到测试服务器上时一直有这个错误
后来发现是打印机的名字没有对上

 

另外整理了使用jacob环境的一些配置

jacob-1.18-x86.dll 、jacob-1.18-x64.dll

文件放在 %Java_Home%jre/bin 与  %Java_Home%/bin  目录下

以下为打印失败  则追加:

jacob-1.18-x64.dll放到C:\Windows\System32下面(64)

jacob-1.18-x86.dll 放到C:\Windows\SysWOW64下面(32位)

检查以下步骤

 

 

还有个别win7的电脑需要设置一下,如下:在运行窗口输入dcomcnfg,打开组件服务窗口。选择[组件服务]-[计算机]-[我的电脑]-[DCOM配置]-[Microsoft Office Word97-2003文档],右键[属性],选中[标识],将启动用户改成交互式用户。点击确定即可。

 

 

 

 

posted @   章齐斌  阅读(6582)  评论(2编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
点击右上角即可分享
微信分享提示