PrintSystemJobInfo.JobStream не работает? - PullRequest
3 голосов
/ 11 января 2010

Я получаю очередь от своего целевого принтера и просматриваю список заданий на нем. Когда задание не IsSpooling, я пытаюсь прочитать JobStream, чтобы увидеть задание на печать.

Пока JobStream всегда был нулевым. Мои печатные материалы взяты из приложения DOS и должны быть чисто текстовыми. Я поставил принтер на паузу, чтобы обезопасить дождевой лес, но я все еще должен получить данные из буфера, верно?

Я что-то упустил или PrintSystemJobInfo.JobStream сломан?

1 Ответ

2 голосов
/ 15 ноября 2011

Это значение почти всегда будет нулевым. Ссылка на это сообщение на форуме: http://www.vbforums.com/showthread.php?t=549634

Если вам нужен настоящий двоичный файл JobStream, лучше всего прочитать файл спула (.SPL) из каталога «C: \ Windows \ System32 \ spool \ PRINTERS». Вы можете приостановить задание до его печати или установить параметр «сохранить задания на печать», как указано в связанном сообщении на форуме. Однако следует помнить, что эти данные представлены в различных форматах, в зависимости от драйвера, создающего файл спула, и приложения, инициирующего печать. Извлечение данных из этого потока не является тривиальной задачей, поскольку оно изменится с драйвера принтера на драйвер принтера. Если вы работаете с одним известным принтером, вы можете добиться успеха.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...