`
duanfei
  • 浏览: 733501 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

(转)Java jacob调用打印机打印word文档

 
阅读更多

折腾了好久,最终决定由用一个第三方的,找到了jacob,还不错,特此记录下。

1.将jacob的dll文件拷贝到C:\Windows\System32中。

2.在任务管理器中将服务DCom Server Process Launcher(DcomLaunch)打开。

3.将jacob.jar拷贝到项目的/libs目录下。

值得注意的是,我在Windows Server 2008上,找不到dll文件,报错:Exception in thread "main" java.lang.UnsatisfiedLinkError: no jacob-1.17-x86 in java.library.path

但是在win系统上,就没事了。

所以这时候你需要将dll文件也拷贝至你的jdk/bin目录下,jdk/jre/bin目录下,以及jre/bin目录下。这样就没有什么问题了。

代码如下:

public class TestDoc {
    public static void main(String[] args) {
        String path="D:\\yanqiong.doc";
        System.out.println("开始打印");
        ComThread.InitSTA();
        ActiveXComponent word=new ActiveXComponent("Word.Application");
        Dispatch doc=null;
        Dispatch.put(word, "Visible", new Variant(false));
        Dispatch docs=word.getProperty("Documents").toDispatch();
        doc=Dispatch.call(docs, "Open", path).toDispatch();
        
        try {
            Dispatch.call(doc, "PrintOut");//打印
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("打印失败");
        }finally{
            try {
                if(doc!=null){
                    Dispatch.call(doc, "Close",new Variant(0));
                }
            } catch (Exception e2) {
                e2.printStackTrace();
            }
            //释放资源
            ComThread.Release();
        }
    }
}

 

 

分享到:
评论

相关推荐

    java打印word的jacob

    Java打印Word文档通常涉及到对Microsoft Office接口的调用,而JACOB(Java COM Bridge)是一个Java库,它为Java应用程序提供了与COM组件交互的能力,包括Microsoft Word。JACOB通过JNI(Java Native Interface)技术...

    jacob打印机打印本地的excel和word

    本文将深入探讨如何利用Jacob库实现本地Excel和Word文档的打印功能。 首先,让我们理解Jacob的核心概念。Jacob库是Java和COM接口之间的桥梁,它使得开发者能够通过Java代码直接调用Windows操作系统中的COM组件,这...

    Jacob实现word转PDF之格式最美转化

    在这个场景中,我们使用Jacob来实现Word文档到PDF的转换,以保持格式的一致性和美观性。在转换过程中,确保你的计算机上已经安装了Office 2010或更高版本,因为较低版本可能无法支持某些功能,导致转换失败或出现...

    java调用WPS或pdfcreator的com接口实现doc转pdf

    PDFCreator是一个虚拟打印机,它可以将任何可以打印的文档转换成PDF。通过设置打印作业的目标为PDFCreator,我们可以在Java中调用打印接口,实现doc到pdf的转换。 5. **Jacob的使用步骤**: - 首先,需要将Jacob...

    jacob打印word和excel,包含dll和jar包

    2. **使用Jacob打印Word文档**: - 首先,你需要创建一个`ActiveXComponent`对象,表示Word应用实例。例如: ```java import com.jacob.com.*; ActiveXComponent word = new ActiveXComponent("Word....

    jacob1.1.8工具

    1. **Office自动化**:在Java应用中生成、编辑或分析Office文档,如报表生成、邮件合并等。 2. **系统集成**:与其他Windows应用程序或服务进行交互,如控制打印机、读写注册表等。 3. **自动化测试**:在Java测试...

    jacob-1.18-MX.rar

    - **Word转PDF**:由于Jacob可以直接操作Word文档,因此可以通过它将Word文档转换为PDF格式,这对于企业自动化处理文档流程非常有用。 - **文件操作**:除了转换,Jacob还可以用来创建、读取和修改Word、Excel等...

    jacob API html格式

    - **自动化Office文档处理**:使用Jacob,你可以编写Java程序来创建、编辑和保存Word文档、Excel电子表格或PowerPoint演示文稿。 - **系统管理**:可以通过Jacob访问Windows注册表,或者控制打印机、网络共享等系统...

    jacob最新1.19版-免费下载

    1. **Office自动化**:Jacob常用于自动化处理Word、Excel、PowerPoint等Microsoft Office文档,进行数据导入导出、格式转换、报表生成等工作。 2. **ActiveX控件**:通过Jacob,Java应用可以与网页中的ActiveX控件...

    jacob-1.14.3-x64

    例如,如果要使用Jacob调用Excel进行数据处理,你可以创建一个`ActiveXComponent`实例,然后通过它的`invoke`方法调用Excel的各种方法,如打开工作簿、读写单元格数据等。 总的来说,Jacob-1.14.3-x64是Java开发者...

    64位jacob-1.17-M2-x64.dll和jar包

    在实际应用中,当需要在64位Java环境中调用如Excel、Word等Office组件,或者任何其他基于COM的Windows应用程序时,64位Jacob库就显得尤为重要。例如,你可以使用Jacob来自动化Office文档的生成、修改或分析,也可以...

    jacob-1.16.rar

    在Java项目中,我们需要将这个jar包添加到项目的类路径中,以便编译和运行包含Jacob调用的Java代码。 Jacob库的核心功能主要包括: - **自动化办公软件**:如Word、Excel等,可以创建、修改、格式化文档,执行宏等...

    jacob下载 包含所有World、PDF转图片等jar、dll

    标题提到的“World”可能是误打,实际应该是“Word”,因为Jacob的一个常见应用就是处理Microsoft Word文档。 在提供的描述中,我们看到了三个不同版本的jacob.dll文件,分别是jacob-1.14.3-x64.dll、jacob-1.17-x...

    jacob-Java-COM中间件-jar.zip

    1. **集成Office应用**:例如,自动化Excel表格的生成和编辑,或者从Word文档中提取数据。 2. **调用Windows API**:例如,读取系统信息,控制打印机,或与硬件设备通信。 3. **与第三方软件交互**:如果有些功能只...

    jacob-1.18包含jacob-1.18的jar包、jacob-1.18-x64.dll、jacob-1.18-x86.dll

    - 打开和操作Word文档:创建一个新的Word文档,插入文本,保存文件等。 - 数据分析:通过Excel API读取、写入和处理电子表格数据。 - 控制打印机:设置打印参数,打印文档等。 - 访问硬件设备:通过COM接口与...

    jacob--Java 与 COM 组件的互操作

    这种方式虽然比纯Java解决方案更为复杂,但在处理与Windows操作系统紧密集成的任务时,如Excel、Word文档操作、打印机管理等,却显得非常实用。 使用Jacob,开发者可以: 1. **创建COM对象**:通过Jacob,你可以...

    jacob-1.16-M2-x64_jacob_

    在Jacob中,JNI被用来在Java虚拟机和本地(非Java)代码之间建立桥梁,使得Java程序能够加载并调用“jacob-1.16-M2-x64.dll”这样的本地库。 3. **COM(Component Object Model)**:微软提出的一种软件接口技术,...

    jacob版本整合包

    - 与Excel、Word等Office应用进行数据交互,比如自动化文档处理。 - 访问Windows操作系统API,例如文件操作、系统信息获取等。 - 调用Windows特定的COM服务,如打印机管理、数据库连接等。 - 与ActiveX控件交互,当...

    jacob-1.18.0-all.zip

    1. **自动化办公软件**:如使用Jacob调用Microsoft Office接口,实现Java程序对Word、Excel等文档的自动化操作,进行数据导入导出、格式转换等任务。 2. **系统集成**:Java应用程序可以通过Jacob与各种Windows特定...

Global site tag (gtag.js) - Google Analytics