Java 使用com4j打印MSWord文档
我正在用com4j打印一个.doc文件。 这是我的代码:Java 使用com4j打印MSWord文档,java,ms-word,printing,access-violation,com4j,Java,Ms Word,Printing,Access Violation,Com4j,我正在用com4j打印一个.doc文件。 这是我的代码: document.printOut2000(true, false, WdPrintOutRange.wdPrintAllDocument, newDocumentPath, _, _, WdPrintOutItem.wdPrintDocumentContent, 1, _, WdPrintOutPages.wdPrintAllPages, true, true, _, false, 0, 0, 0, 0); 我从录制的Word宏和 但
document.printOut2000(true, false, WdPrintOutRange.wdPrintAllDocument, newDocumentPath, _, _, WdPrintOutItem.wdPrintDocumentContent, 1, _, WdPrintOutPages.wdPrintAllPages, true, true, _, false, 0, 0, 0, 0);
我从录制的Word宏和
但我得到的只是以下错误:
Java运行时环境检测到意外错误:
pc=0x770f48f9、pid=3792、tid=5996处的异常访问(0xc0000005)
Java虚拟机:Java热点(TM)客户端虚拟机(11.0-b16混合模式,共享windows-x86)
有问题的框架:
C[OLEAUT32.dll+0x48f9]
你知道我怎么解决这个问题吗
编辑:Com4j正在打开文档,因此我认为前面方法的结果不是问题所在,但要感谢DTH的提示。访问冲突通常与内存问题有关,例如缓冲区覆盖,甚至空指针。 我建议您再次检查代码,并在打印前控制用于准备文档的方法的结果,以便查看它们是否正常工作
我不是很确定,但是试试看,也许这就是你问题的解决办法。不,这些方法的结果都是可以的。而且com4j正在打开文档,所以这似乎不是问题所在。