Распечатать MSWord-документ с com4j - PullRequest
0 голосов
/ 09 сентября 2010

Я пытаюсь распечатать .doc-файл с com4j. Это мой код:

document.printOut2000(true, false, WdPrintOutRange.wdPrintAllDocument, newDocumentPath, _, _, WdPrintOutItem.wdPrintDocumentContent, 1, _, WdPrintOutPages.wdPrintAllPages, true, true, _, false, 0, 0, 0, 0);

Я получил значения из записанного Word-Macro и http://msdn.microsoft.com/en-us/library/microsoft.office.tools.word.document.printout(v=VS.80).aspx

Но все, что я получаю, это следующая ошибка:

В среде выполнения Java обнаружена непредвиденная ошибка:

EXCEPTION_ACCESS_VIOLATION (0xc0000005) при pc = 0x770f48f9, pid = 3792, tid = 5996

Java VM: клиентская виртуальная машина Java HotSpot (TM) (смешанный режим 11.0-b16, совместное использование windows-x86) Проблемная рамка: C [OLEAUT32.dll + 0x48f9]

Есть идеи, как мне это решить?

Редактировать: Com4j открывает документ, поэтому я думаю, что результаты предыдущих методов не проблема, но спасибо DTH за подсказку.

1 Ответ

0 голосов
/ 09 сентября 2010

Нарушение прав доступа часто связано с проблемой памяти, например перезаписью буфера или даже нулевым указателем. Я бы посоветовал вам еще раз проверить свой код и проконтролировать результаты методов, которые вы используете для подготовки документа перед печатью, чтобы убедиться, что они работают правильно.

Я не совсем уверен в этом, но попробуйте, может быть, это решение вашей проблемы.

...